您的位置:首页 > 大数据 > 人工智能

hdoj-2674-N!Again

2016-07-27 09:10 381 查看
Description

WhereIsHeroFrom: Zty, what are you doing ?

Zty: I want to calculate N!……

WhereIsHeroFrom: So easy! How big N is ?

Zty: 1 <=N <=1000000000000000000000000000000000000000000000…

WhereIsHeroFrom: Oh! You must be crazy! Are you Fa Shao?

Zty: No. I haven’s finished my saying. I just said I want to calculate N! mod 2009

Hint : 0! = 1, N! = N*(N-1)!

Input

Each line will contain one integer N(0 <= N<=10^9). Process to end of file.

Output

For each case, output N! mod 2009

Sample Input

4

5

Sample Output

24

120

打表找规律

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
using namespace std;

int a[2010];
const int mod=2009;

void init()
{
memset(a,0,sizeof(a));
a[1]=1;
a[0]=1;
for(int i=1;i<2010;i++)
{
a[i]=(a[i-1]*i)%mod;
}
}

int main()
{
int n;
init();
while(scanf("%d",&n)!=EOF)
{
if(n>=2009)
printf("0\n");
else printf("%d\n",a
);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: