HDU 2156 分数矩阵

来源:互联网 发布:adams2016软件卸载 编辑:程序博客网 时间:2024/05/22 15:44

http://acm.hdu.edu.cn/showproblem.php?pid=2156

 

分数矩阵

Time Limit: 2000/1000 MS(Java/Others)    MemoryLimit: 32768/32768 K (Java/Others)
Total Submission(s):2317    AcceptedSubmission(s): 1381


Problem Description
我们定义如下矩阵:
1/1 1/2 1/3
1/2 1/1 1/2
1/3 1/2 1/1
矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增。
请求出这个矩阵的总和。
 


 

Input
每行给定整数N (N<50000),表示矩阵为N*N.当N为0时,输入结束。
 


 

Output
输出答案,保留2位小数。
 


 

Sample Input
1 2 3 40
 


 

Sample Output
1.00 3.005.67 8.83
 


 

Author
Wiskey
 


 

Source
2008信息工程学院集训队——选拔赛
 


 

Recommend
linle
 
分析:没有找到太多规律。。稍微化简一下,直接暴力解决,还是可以AC的^-^
代码如下:
#include<stdio.h>
int main()
{
 double n,i,j;
 double sum;
 while(scanf("%lf",&n),n)
 {
  sum=0;
  for(i=1;i<=n;i++)
          sum=sum+n/i;
  for(i=2;i<=n;i++)
          sum-=((i-1)/i);
       sum=2*sum-n;
       printf("%.2lf\n",sum);
 }
 return 0;
}
 
原创粉丝点击