HDU 2674

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 2674相关的知识,希望对你有一定的参考价值。

0 <= N<=10^9

看到这个数据范围知道常规方法肯定做不出来、

 不过一想想既然是mod2009,是不是只要其中含有一个2009,那么其结果一定是0了呢

说了这里思路,就是看什么时候出现2009这个因式,41!中  41*7*7;也就是说n>40的结果都是0了

 贴代码了

 

 1 #include<iostream>
 2 #include<cstdio>
 3 using namespace std;
 4 const int qq=1e1+5;
 5 int num[qq];
 6 int main()
 7 {    
 8         num[0]=1;
 9         for(int i=1;i<=40;++i)
10             num[i]=(i*num[i-1])%2009;
11         int n;
12         while(cin >> n){
13             if(n>40)    cout << 0 << endl;
14             else
15             cout << num[n] << endl;
16         }
17 }

 

以上是关于HDU 2674的主要内容,如果未能解决你的问题,请参考以下文章

hdu 2674 N!Again

快速幂 HDU-1021 Fibonacci Again , HDU-1061 Rightmost Digit , HDU-2674 N!Again

HDU1172(枚举)

Hdu 1853 Cyclic Tour

HDU-4451-Dressing (2012年金华赛区J题)

CRS-2674