51nod 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


题意:中文题

思路:

补充一些不等式知识(高中不等式全还给老师了。。。。。)




题目限制边长为整型,降低题目难度。只要从面积开根以后往1暴力找出答案

#include <iostream>
#include<math.h>
using namespace std;

int main()
{
    int s;
    scanf("%d",&s);
    int tmp=sqrt(s);
    int a;
    for(int i=tmp;i>0;i++)
    {
        if(s%i==0)
        {
            a=i;
            break;
        }
    }
    printf("%d
",2*(a+s/a));

    return 0;
}




原文地址:https://www.cnblogs.com/bryce1010/p/9387327.html