ACM模版

描述

题解

直接S开方,然后查找符合条件的矩形,输出即可。这里需要强调的是一定要注意输出的是int型,因为我直接coutdouble型,所以出现了几组错误答案,这几组输出的结果是科学计数法的结果,略显尴尬,细节决定成败。

代码

#include <iostream>
#include <cstdio>
#include <cmath>

using namespace std;

int main(int argc, const char * argv[])
{
    int S;
    while (cin >> S)
    {
        double s = sqrt(S);
        for (int i = (int)s; i > 0; i--)
        {
            double res = S * 1.0 / i;
            if (res == (int)res)
            {
                int ans = i + i + res + res;    // cout << i + i + res + res << '\n';如此会WA,需要将结果格式化
                printf("%d\n", ans);
                break;
            }
        }
    }

    return 0;
}