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
4
0
 
Sample Output
1.00
3.00
5.67
8.83
代码如下:
 #include <cstdio>
int main()
{
int n;
while(scanf("%d",&n)&&n!=){
double sum;
if(n!=){
sum=n*1.00+2.00/n;
for(int i=;i<n;i++){
sum+=i**1.00/(n-*i+);
}
}else{
sum=1.00;
} printf("%.2lf\n",sum);
} return ;
}
思路解析:
              本题其实是一道找规律的基础题。本题有很多种解决问题的办法,在这里只介绍我思考的一种方法。以对角线为分界将矩阵一分为二。
以4*4为例子
             1          1/2         1/3         1/4
             1/2       1            1/2         1/3
             1/3       1/2         1            1/2
             1/4       1/3         1/2         1
那么sum=n*1  +   2*1/2*3   +    2*1/3*2   +   2*1/4
那么我们就看到了规律,
不过第一个和最后一个无法算进来,所以提前算好,sum先=n*1   +   2*1/n
然后开始循环。~~答案粗线23333333.

HDU_2156 分数矩阵的更多相关文章

  1. HDOJ(HDU) 2156 分数矩阵(嗯、求和)

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

  2. [hdu2156]分数矩阵

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

  3. HDU 2156 分数矩阵

    http://acm.hdu.edu.cn/showproblem.php?pid=2156 Problem Description 我们定义如下矩阵:1/1 1/2 1/31/2 1/1 1/21/ ...

  4. 问题 A: 分数矩阵

    题目描述 我们定义如下矩阵:1/1 1/2 1/31/2 1/1 1/21/3 1/2 1/1矩阵对角线上的元素始终是1/1,对角线两边分数的分母逐个递增.请求出这个矩阵的总和. 输入 输入包含多组测 ...

  5. 基于MapReduce的SimRank++算法研究与实现

    一.算法应用背景 计算广告学(Computational Advertising)是一门广告营销科学,以追求广告投放的收益最大化为目标,重点解决用户与广告匹配的相关性和广告的竞价模型问题,涉及到自然语 ...

  6. 洛谷P1074 靶形数独(算竞进阶习题)

    还是数独.. 比上一个多了个分数矩阵,其实没什么差别,但是数据好像水了许多... #include <bits/stdc++.h> #define INF 0x3f3f3f3f using ...

  7. 《TC训练赛一》题解!

    以下题目标题就是此题题目链接,题目内容为了节省篇幅就不粘上去了.整套题的链接:https://acm.bnu.edu.cn/v3/contest_show.php?cid=8679#info 密码:7 ...

  8. 用深度学习做命名实体识别(七)-CRF介绍

    还记得之前介绍过的命名实体识别系列文章吗,可以从句子中提取出人名.地址.公司等实体字段,当时只是简单提到了BERT+CRF模型,BERT已经在上一篇文章中介绍过了,本文将对CRF做一个基本的介绍.本文 ...

  9. LPAT: Learning to Predict Adaptive Threshold for Weakly-supervised Temporal Action Localization [Paper Reading]

    Motivation: 阈值分割的阈值并没有通过模型训练学出来,而是凭借主观经验设置,本文通过与背景得分比较提取对应的proposal,不用阈值的另一篇文章是Shou Zheng的AutoLoc,通过 ...

随机推荐

  1. HDOJ-ACM1010(JAVA) 奇偶剪枝法 迷宫搜索

    转载声明:原文转自:http://www.cnblogs.com/xiezie/p/5568822.html 第一次遇到迷宫搜索,给我的感觉是十分惊喜的:搞懂这个的话,感觉自己又掌握了一项技能~ 个人 ...

  2. php学习小记2 类与对象

    php类的一些特性: 1. 伪变量$this.$this是一个到主叫对象的引用.取值:该方法所从属的对象,可能是另外的对象(前提,当该方法被静态调用时).$this变量存在于一个类的非静态方法中,在静 ...

  3. poj 1523 SPF【点双连通求去掉割点后bcc个数】

    SPF Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 7246   Accepted: 3302 Description C ...

  4. 统一建模语言(UML) 版本 2.0

    原文: http://www.ibm.com/developerworks/cn/rational/321_uml/ 简介 参考 UML 基础系列的其他文章和教程 UML基础: 统一建模语言简介 UM ...

  5. WindDbug应用

    Windbg是windows平台上的一款相当强大的调试工具,可以从msdn网站下载得到,最新版本包含在windows sdk中,默认会被安装在C:\Program Files\Debugging To ...

  6. 找出数组前N大的数

    这个题也是个比较有名的面试题.当然有很多变种. 题目意思基本是:从一个数据量很大的数组里找前N大的元素.不允许排序. 这个题有两个比较好的思路: 思路一:用快速排序的思想,是思想,不是要排序; 思路二 ...

  7. Jquery 常用总结

    获取元素的宽度:    如果用$(ele).attr("width")获取的值不带px    如果用$(ele).css("width")获取的值带px //获 ...

  8. java发送带附件的邮件

    /** * java发送带附件的邮件 * 周枫 * 2013.8.10 */ package com.dsideal.Util; import javax.mail.*; import javax.m ...

  9. java21 封装Response:

    封装Response: /** * 封装响应信息 */ public class Response { //两个常量 public static final String CRLF="\r\ ...

  10. Android 读取手机短信

    获取android手机短信需要在AndroidManifest.xml加权限: <uses-permission android:name="android.permission.RE ...