一个矩形的面积为S,已知该矩形的边长都是整数,求所有满足条件的矩形中,周长的最小值。例如:S = 24,那么有{1 24} {2 12} {3 8} {4 6}这4种矩形,其中{4 6}的周长最小,为20。
Input
输入1个数S(1 <= S <= 10^9)。
Output
输出最小周长。
Input示例
24
Output示例
20
#include <iostream> #include <cmath> #include <algorithm> using namespace std; int main() { int s; cin>>s; if(sqrt(s)!=s) { int i=ceil(sqrt(s)); int j=(int)sqrt(s); while(i*j!=s) { if(j*(i+1)<=s) i++; else j--; } cout<<2*i+2*j<<endl; } else cout<<4*sqrt(s)<<endl; return 0; }