首页 > ACM题库 > HDU-杭电 > hdu 2009 求数列的和[解题报告]C++
2013
12-26

hdu 2009 求数列的和[解题报告]C++

求数列的和

问题描述 :

数列的定义如下:
数列的第一项为n,以后各项为前一项的平方根,求数列的前m项的和。

输入:

输入数据有多组,每组占一行,由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。

输出:

输入数据有多组,每组占一行,由两个整数n(n<10000)和m(m<1000)组成,n和m的含义如前所述。

样例输入:

81 4
2 2

样例输出:

94.73
3.41

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=2009

#include <math.h>
#include <stdio.h>

int main(void)
{
    int n;
    double x, s;

    while (scanf("%lf%d", &x, &n) != EOF)
    {
        for(s = 0.0; n--; x = sqrt(x))
            s += x;
        printf("%.2lf\n", s);
    }

    return 0;
}

解题转自:http://blog.csdn.net/basementman/article/details/16904793


  1. Often We don’t set up on weblogs, but I would like to condition that this established up really forced me individually to do this! considerably outstanding publish

  2. 第二个方法挺不错。NewHead代表新的头节点,通过递归找到最后一个节点之后,就把这个节点赋给NewHead,然后一直返回返回,中途这个值是没有变化的,一边返回一边把相应的指针方向颠倒,最后结束时返回新的头节点到主函数。