【HDU - 2114】 Calculate S(n) (立方和)

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

做这道题只要知道立方和公式就非常简单了。S_n=\frac{1}{4}*n^2*(n+1)^2

n的平方的前n项和公式:n(n+1)(2n+1)/6

ac代码:

#include<iostream>
#include<stdio.h>
#include<algorithm>
#include<math.h>
#include<cstring> 
#include<string.h>
#include<queue>
using namespace std;
typedef long long ll;
long long  a[50050];
int main()
{
	ll n;
	while(scanf("%lld",&n)!=EOF)//开始外面n设置成ll,里面结果用Int取得,wr了
	{
		printf("%04lld\n",(((n*(n+1)/2)%10000)*((n*(n+1)/2)%10000))%10000);这个地方要对10000取模
	}
	return 0;
 } 

猜你喜欢

转载自blog.csdn.net/QQ_774682/article/details/81257102