Codeforces Round #387 (Div. 2) A. Display Size

http://codeforces.com/problemset/problem/747/A

题意:
实现,输入n,为总方块数。
a为row,b为column,要求a < b(行 <= 列。),且b-a尽可能小。

代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <bits/stdc++.h>
using namespace std;

#define FOR(i, a, b) for (int i = (a); i < (b); i++)
typedef long long ll;
int n;

int main() {
scanf("%d", &n);
int a = 1, b = n;
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
a = i;
b = n / a;
}
// 如果当前i能整除,a变大,b变小。最佳情况就是i*i=n,正方形,相差0
}
return !printf("%d %d\n", a, b);
}