【HDOJ6600】ジャスト(签到)問題をスキップ

質問の意味:金型1E6 + 7のn個の結果を掲載し!

N <= 1E9

アイデア:

1つの#include <ビット/ STDC ++ H>
 2  使用して 名前空間STDを、
3 typedefの長い 長いLL。
4符号なしのtypedef int型 のuint ;
5 typedefの符号なしの長い 長いULL。
6のtypedef対< INTINT > PII。
7のtypedef対<-1,11,11-> PLL。
8 typedefのベクトル< int型 > VI。
9  の#define N 110000
 10  の#define M 1100000
 11  の#defineFiの第
 12  の#define SE第
 13  の#define MPがmake_pair
 14件 の#define PIのACOS(-1)
 15  の#define MEM(A、B)のmemset(A、B、はsizeof(A))
 16  の#define(REPをI、 B)は(INT I =(INT); iが<=(INT)B; I ++)
 17  の#defineあたり(iは、b)のための式(I =(INT INT); iが> =(INT)B ; i--)
 18  の#define lowbit(x)は、x&( - X)
 19  の#defineランド(RAND()*(1 << 16)+ランド())
 20  の#define ID(X)((X)<= B(X):MN /(X)+1)
 21  の#define LS P << 1
 22  の#define RS P << 1 | 1
 23  
24  CONST int型 MOD = 1E6 + 3 ;
25        二重 EPS = 1E- 6 26        LL INF = 1E14。
27  
28  
29  int型リード()
 30  {
 31     INT V = 0、F = 1 32     チャー C = GETCHAR()。
33     一方、(C < 48 || 57 <C){ もし、(C == ' - ')、F = - 1C = GETCHAR();}
 34     ながら48 <= C && C <= 57)V =(V << 3)+ V + V + C- 48、C = GETCHAR()。
35     リターンのV *のF;
36  }
 37  
38  のint main()の
 39  {
 40      // freopenは( "1.in"、 "R"、STDIN)。
41      // freopenは( "1.out"、 "W"、STDOUT)。
42      INT N。
43      一方(scanf関数(" %のD "、&​​N)=!EOF)
 44      {
 45          LL ANS = 1 46          であれば(N> = MOD)
 47          {
 48             printf(" 0 \ N " );
49              続け;
50          }
 51  
52          担当者(I、1、N)ANS = ANS * I%MOD。
53          のprintf(" %I64dの\ n " 、ANS)。
54      }
 55      リターン 0 56 }

 

おすすめ

転載: www.cnblogs.com/myx12345/p/11584078.html