#include <stdio.h> #include <math.h> int gcd(int x, int y) { if (y == 0) { return x; } return gcd(y, x%y); } int main() { int m, n; scanf("%d %d", &m, &n); if (m > n) { int temp = m; m = n; n = temp; } int k = n / m; int a = 0, b = 0, min = 99999, sum = 0; for (int i = 1;i <= sqrt(k);i++) { int x = k / i; if (x*i == k&&gcd(x,i)==1) { sum = i + x; if (min > sum) { a = i * m; b = x * m; min = sum; } } } printf("%d %d\n",a, b); } |
Double click to view unformatted code.