結果
| 問題 | No.117 組み合わせの数 |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-06-20 03:34:22 |
| 言語 | C90(gcc12) (gcc 12.4.0) |
| 結果 |
AC
|
| 実行時間 | 268 ms / 5,000 ms |
| コード長 | 356 bytes |
| 記録 | |
| コンパイル時間 | 125 ms |
| コンパイル使用メモリ | 29,896 KB |
| 最終ジャッジ日時 | 2026-02-23 18:34:09 |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 1 |
コンパイルメッセージ
main.c:2:26: warning: data definition has no type or storage class
2 | long long I[L],F[L],R[L];C,T,N,M=1000000007;main(K){for(;N<2;N++)I[N]=F[N]=R[N]=1;for(;N<L;N++)I[N]=(M-M/N)*I[M%N]%M,F[N]=N*F[N-1]%M,R[N]=I[N]*R[N-1]%M;for(scanf("%d",&T);T--;)if(scanf("\n%c(%d,%d)",&C,&N,&K),C-80)printf("%lld\n",N==-1&&!K?1:N<K?0:(__int128_t)F[N]*R[K]*R[N-K]%M,N=C-67?N+K-1:N);else printf("%lld\n",N<K?0:F[N]*R[N-K]%M);}
| ^
main.c: In function ‘main’:
main.c:2:157: warning: incompatible implicit declaration of built-in function ‘scanf’ [-Wbuiltin-declaration-mismatch]
2 | long long I[L],F[L],R[L];C,T,N,M=1000000007;main(K){for(;N<2;N++)I[N]=F[N]=R[N]=1;for(;N<L;N++)I[N]=(M-M/N)*I[M%N]%M,F[N]=N*F[N-1]%M,R[N]=I[N]*R[N-1]%M;for(scanf("%d",&T);T--;)if(scanf("\n%c(%d,%d)",&C,&N,&K),C-80)printf("%lld\n",N==-1&&!K?1:N<K?0:(__int128_t)F[N]*R[K]*R[N-K]%M,N=C-67?N+K-1:N);else printf("%lld\n",N<K?0:F[N]*R[N-K]%M);}
| ^~~~~
main.c:1:1: note: include ‘<stdio.h>’ or provide a declaration of ‘scanf’
+++ |+#include <stdio.h>
1 | #define L 2000000
main.c:2:190: warning: format ‘%c’ expects argument of type ‘char *’, but argument 2 has type ‘int *’ [-Wformat=]
2 | long long I[L],F[L],R[L];C,T,N,M=1000000007;main(K){for(;N<2;N++)I[N]=F[N]=R[N]=1;for(;N<L;N++)I[N]=(M-M/N)*I[M%N]%M,F[N]=N*F[N-1]%M,R[N]=I[N]*R[N-1]%M;for(scanf("%d",&T);T--;)if(scanf("\n%c(%d,%d)",&C,&N,&K),C-80)printf("%lld\n",N==-1&&!K?1:N<K?0:(__int128_t)F[N]*R[K]*R[N-K]%M,N=C-67?N+K-1:N);else printf("%lld\n",N<K?0:F[N]*R[N-K]%M);}
| ~^ ~~
|
ソースコード
#define L 2000000
long long I[L],F[L],R[L];C,T,N,M=1000000007;main(K){for(;N<2;N++)I[N]=F[N]=R[N]=1;for(;N<L;N++)I[N]=(M-M/N)*I[M%N]%M,F[N]=N*F[N-1]%M,R[N]=I[N]*R[N-1]%M;for(scanf("%d",&T);T--;)if(scanf("\n%c(%d,%d)",&C,&N,&K),C-80)printf("%lld\n",N==-1&&!K?1:N<K?0:(__int128_t)F[N]*R[K]*R[N-K]%M,N=C-67?N+K-1:N);else printf("%lld\n",N<K?0:F[N]*R[N-K]%M);}