hdu 2114

主要是计算前n项和的公式。

前n项和的立方公式为   : s(n)=(n*(n+1)/2)^2;

前n项和的平方公式为:s(n)=n*(n+1)(2*n+1)/6;

转自百度搜索:

公式证明  迭代法:

   我们知道:

  0次方和的求和公式ΣN^0=N 即1^0+2^0+...+n^0=n

  1次方和的求和公式ΣN^1=N(N+1)/2 即1^1+2^1+...+n^1=n(n+1)/2

  2次方和的求和公式ΣN^2=N(N+1)(2N+1)/6 即1^2+2^2+...+n^2=n(n+1)(2n+1)/6——平方和公式,此公式可由同种方法得出,取公式(x+1)^3-x^3=3x^2+3x+1,迭代即得。

  取公式:(X+1)^4-X^4=4*X^3+6*X^2+4*X+1

  系数可由杨辉三角形来确定

  那么就得出:

  (N+1)^4-N^4=4N^3+6N^2+4N+1....................................(1)

  N^4-(N-1)^4=4(N-1)^3+6(N-1)^2+4(N-1)+1.......................(2)

  (N-1)^4-(N-2)^4=4(N-2)^3+6(N-2)^2+4(N-2)+1..................(3)

  ...................

  2^4-1^4=4×1^3+6×1^2+4×1+1...................................(n)

  .

  于是(1)+(2)+(3)+........+(n)有

  左边=(N+1)^4-1

  右边=4(1^3+2^3+3^3+......+N^3)+6(1^2+2^2+3^2+......+N^2)+4(1+2+3+......+N)+N

  所以呢

  把以上这已经证得的三个公式代入

  4(1^3+2^3+3^3+......+N^3)+6(1^2+2^2+3^2+......+N^2)+4(1+2+3+......+N)+N=(N+1)^4-1

  得4(1^3+2^3+3^3+......+N^3)+N(N+1)(2N+1)+2N(N+1)+N=N^4+4N^3+6N^2+4N

  移项后得 1^3+2^3+3^3+......+N^3=1/4 (N^4+4N^3+6N^2+4N-N-2N^2-2N-2N^3-3N^2-N)

  等号右侧合并同类项后得 1^3+2^3+3^3+......+N^3=1/4 (N^4+2N^3+N^2)

  即

  1^3+2^3+3^3+......+N^3= 1/4 [N(N+1)]^2

  大功告成!

  立方和公式推导完毕

  1^3+2^3+3^3+......+N^3= 1/4 [N(N+1)]^2

 

Problem Description
Calculate S(n).

S(n)=1 3+2 3 +3 3 +......+n 3 .

Input
Each line will contain one integer N(1 < n < 1000000000). Process to end of file.

Output
For each case, output the last four dights of S(N) in one line.

Sample Input
1
2

Sample Output
0001
0009
#include <iostream>
#include<iomanip>
using namespace
std ;
int
main()
{

__int64
n ,sum ;
while
(
scanf ( "%I64d" ,&n )!=EOF )
{

n %= 10000 ;
sum =(n *n *(n + 1 )*(n + 1 ))/ 4 ;
printf ( "%04d\n" ,sum % 10000 );
}

return
0 ;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值