为了准备运动会颁奖典礼,学校想购买一块长方形的红地毯,已知学校给的的钱刚好够买面积为N的红地毯。由于地毯的边上要用长度为1的花边装饰,当然是边长越短越好(长度是整数)。为了节省花边,老师要求晨晨通过编计算机程序来计算边长最短是多少?
输入格式
一行:1个整数N,表示矩形的面积。N的范围为[1, 1000000000]。
输出格式
一行:一个整数表示边长。
输入/输出例子1
输入:
15
输出:
16
样例解释
(红地毯的边长分别为3和5)
做这种题,要先知道这个题目考什么代码,这题目一看就是平方根的问题,知道类型,要懂平方根的代码:sqrt();接下来就容易求出来了,代码如下:
#include<bits/stdc++.h>
using namespace std;
int n,s1,s2;
int main(){
cin>>n;
for(int i=1;i<=sqrt(n);i++)
{
if(i*(n/i)==n)
{
s1=i,s2=n/i;
}
}
cout<<(s1+s2)*2;
return 0;
}
以上就是这道题的代码,谢谢大家!