关闭

HDU 5224 Tom and paper(BestCoder Round #40)

标签: hdubestcoder入门
679人阅读 评论(0) 收藏 举报
分类:

题目链接:Tom and paper


题面:

Tom and paper

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 679    Accepted Submission(s): 432


Problem Description
There is a piece of paper in front of Tom, its length and width are integer. Tom knows the area of this paper, he wants to know the minimum perimeter of this paper.
 

Input
In the first line, there is an integer T indicates the number of test cases. In the next T lines, there is only one integer n in every line, indicates the area of paper.
T10,n109
 

Output
For each case, output a integer, indicates the answer.
 

Sample Input
3 2 7 12
 

Sample Output
6 16 14
 

Source
 

解题:

若周长固定,取半值附近的值,面积最大。反之,取平方根附近,周长最长。


代码:

#include <iostream>
#include <cmath>
using namespace std;

int main()
{
    int t,n,root;
    cin>>t;
    while(t--)
    {
      cin>>n;
      root=sqrt(1.0*n);
      for(int i=root;;i--)
      {
      	if(n%i==0)
      	{
	      cout<<2*(i+n/i)<<endl;  	
	      break;
        }
      }
    }
    return 0;
}
 


0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:235062次
    • 积分:5682
    • 等级:
    • 排名:第4835名
    • 原创:328篇
    • 转载:10篇
    • 译文:0篇
    • 评论:44条
    博客专栏