質問の意味:金型1E6 + 7のn個の結果を掲載し!
N <= 1E9
アイデア:
1つの#include <ビット/ STDC ++ H> 2 使用して 名前空間STDを、 3 typedefの長い 長いLL。 4符号なしのtypedef int型 のuint ; 5 typedefの符号なしの長い 長いULL。 6のtypedef対< INT、INT > 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 = - 1。C = 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 }