(51nod)1283

来源:互联网 发布:先锋编辑软件 编辑:程序博客网 时间:2024/06/05 02:46

1283 最小周长
题目来源: Codility
基准时间限制:1 秒 空间限制:131072 KB 分值: 5 难度:1级算法题
 收藏
 关注
一个矩形的面积为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
李陶冶 (题目提供者)

既然都说了是整数,sqrt一下暴力跑起来。

#include <cstdio>#include <cmath>#include <algorithm>using namespace std;int main(){    int n,i;    while(~scanf("%d",&n))    {        for(i=(int)sqrt(n+0.5);n%i;i--);        printf("%d\n",2*((n/i)+i));    }    return 0;}


0 0
原创粉丝点击