Calculate S(n) hdu 2114
Calculate S(n)
Time Limit: 10000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 3451 Accepted Submission(s): 1335
Problem Description
Calculate S(n).
S(n)=13+23 +33 +......+n3 .
S(n)=13+23 +33 +......+n3 .
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
2
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
int i, j;
long long sum = 0, N;
while(scanf("%lld", &N)!= EOF) {
sum = 0;
if ( N > 10000)
N = N % 10000; //因为只需求后四位
sum = (N * (N + 1) / 2) * (N * (N + 1) / 2); //立方和公式
sum = sum % 10000;
printf("%04lld\n",sum);
}
return 0;
}
Sample Output
0001
0009
0009
posted on 2011-08-16 21:54 more think, more gains 阅读(260) 评论(0) 编辑 收藏 举报