一个矩形的面积为S,已知该矩形的边长都是整数,求所有满足条件的矩形中,周长的最小值。例如:S = 24,那么有{1 24} {2 12} {3 8} {4 6}这4种矩形,其中{4 6}的周长最小,为20。
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
long long int S;
cin >> S;
long long int a, b;
a = (long long int)sqrt(S);
for (; a > 0; a--)
{
b = S/a;
if (a*b == S)
{
cout << 2*(a+b) << endl;
break;
}
}
return 0;
}