結果

問題 No.109 N! mod M
コンテスト
ユーザー hos.lyric
提出日時 2015-02-17 22:29:17
言語 C90(gcc12)
(gcc 12.4.0)
コンパイル:
gcc-12 -O2 -std=c90 -DONLINE_JUDGE -o a.out _filename_ -lm
実行:
./a.out
結果
AC  
実行時間 110 ms / 5,000 ms
コード長 242 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 131 ms
コンパイル使用メモリ 30,024 KB
最終ジャッジ日時 2026-02-23 18:07:03
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 9
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c:1:1: warning: data definition has no type or storage class
    1 | n,m;long long a,b;main(t){for(scanf("%d",&t);t--;a=0){scanf("%d%d",&n,&m);for(b=1;b*++b<=m;)if(m%b<1){if(n<b+m/b)for(a=1;n;)a=a*n--%m;goto l;}if(n<m){for(b=1;++n<m;)b=b*n%m;for(a=m-1,n-=2;n;n/=2,b=b*b%m)if(n&1)a=a*b%m;}l:printf("%lld\n",a);}}
      | ^
main.c: In function ‘main’:
main.c:1:31: warning: incompatible implicit declaration of built-in function ‘scanf’ [-Wbuiltin-declaration-mismatch]
    1 | n,m;long long a,b;main(t){for(scanf("%d",&t);t--;a=0){scanf("%d%d",&n,&m);for(b=1;b*++b<=m;)if(m%b<1){if(n<b+m/b)for(a=1;n;)a=a*n--%m;goto l;}if(n<m){for(b=1;++n<m;)b=b*n%m;for(a=m-1,n-=2;n;n/=2,b=b*b%m)if(n&1)a=a*b%m;}l:printf("%lld\n",a);}}
      |                               ^~~~~
main.c:1:1: note: include ‘<stdio.h>’ or provide a declaration of ‘scanf’
  +++ |+#include <stdio.h>
    1 | n,m;long long a,b;main(t){for(scanf("%d",&t);t--;a=0){scanf("%d%d",&n,&m);for(b=1;b*++b<=m;)if(m%b<1){if(n<b+m/b)for(a=1;n;)a=a*n--%m;goto l;}if(n<m){for(b=1;++n<m;)b=b*n%m;for(a=m-1,n-=2;n;n/=2,b=b*b%m)if(n&1)a=a*b%m;}l:printf("%lld\n",a);}}
main.c:1:222: warning: incompatible implicit declaration of built-in function ‘printf’ [-Wbuiltin-declaration-mismatch]
    1 | n,m;long long a,b;main(t){for(scanf("%d",&t);t--;a=0){scanf("%d%d",&n,&m);for(b=1;b*++b<=m;)if(m%b<1){if(n<b+m/b)for(a=1;n;)a=a*n--%m;goto l;}if(n<m){for(b=1;++n<m;)b=b*n%m;for(a=m-1,n-=2;n;n/=2,b=b*b%m)if(n&1)a=a*b%m;}l:printf("%lld\n",a);}}
      |                                                                                                                                                                                                                              ^~~~~~
main.c:1:222: note: include ‘<stdio.h>’ or provide a declaration of ‘printf’

ソースコード

diff #
raw source code

n,m;long long a,b;main(t){for(scanf("%d",&t);t--;a=0){scanf("%d%d",&n,&m);for(b=1;b*++b<=m;)if(m%b<1){if(n<b+m/b)for(a=1;n;)a=a*n--%m;goto l;}if(n<m){for(b=1;++n<m;)b=b*n%m;for(a=m-1,n-=2;n;n/=2,b=b*b%m)if(n&1)a=a*b%m;}l:printf("%lld\n",a);}}
0