您的位置:首页 > 其它

hdu 2114(立方和)

2015-11-16 19:02 316 查看
hdu 2114



证明:

(12+22+...+n2)=n(n+1)(n+2)6;(排列组合法)




(排列组合法)





#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cstdlib>
#include <cmath>
#define LL __int64
#define MAX 0x3f3f3f3f
#define MOD (10000)
#define N (1000000 + 5)
using namespace std;

int a
;

int main()
{
int n;
while (~scanf("%d", &n))
{
LL ans;

n = n % MOD;

if (n & 1)
{
ans = (n + 1) / 2 * n;
}
else
{
ans = n / 2 * (n + 1);
}

ans = ans * ans % MOD;

if (ans < 10)
{
printf("000%I64d\n", ans);
}
else if (ans < 100)
{
printf("00%I64d\n", ans);
}
else if (ans < 1000)
{
printf("0%I64d\n", ans);
}
else
{
printf("%I64d\n", ans);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hdu-2114