#include<cstdio> using namespace std; typedef long long ll; //公式推导,其实就是找到x+c/x的最小值(c=a*a+1),而且保证x与 c/x都为整数 int main() { ll a,i,tmp; while(~scanf("%lld",&a)) { tmp = a*a+1; for(i=a; tmp%i; --i); printf("%lld\n",2*a+i+tmp/i); } return 0; }
#include<cstdio> using namespace std; typedef long long ll; //公式推导,其实就是找到x+c/x的最小值(c=a*a+1),而且保证x与 c/x都为整数 int main() { ll a,i,tmp; while(~scanf("%lld",&a)) { tmp = a*a+1; for(i=a; tmp%i; --i); printf("%lld\n",2*a+i+tmp/i); } return 0; }