結果

問題 No.181 A↑↑N mod M
ユーザー 👑 testestest
提出日時 2016-10-25 03:38:17
言語 C90
(gcc 12.3.0)
結果
WA  
実行時間 -
コード長 352 bytes
コンパイル時間 134 ms
コンパイル使用メモリ 22,272 KB
実行使用メモリ 6,824 KB
最終ジャッジ日時 2024-11-24 03:31:07
合計ジャッジ時間 1,127 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 6
other AC * 33 WA * 4
権限があれば一括ダウンロードができます
コンパイルメッセージ
main.c:1:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
    1 | gcd(p,q){return q?gcd(q,p%q):p;}
      | ^~~
main.c: In function ‘gcd’:
main.c:1:1: warning: type of ‘p’ defaults to ‘int’ [-Wimplicit-int]
main.c:1:1: warning: type of ‘q’ defaults to ‘int’ [-Wimplicit-int]
main.c: At top level:
main.c:2:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
    2 | phi(m){
      | ^~~
main.c: In function ‘phi’:
main.c:2:1: warning: type of ‘m’ defaults to ‘int’ [-Wimplicit-int]
main.c: At top level:
main.c:7:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
    7 | mod3(a,n,m){return n?n%2?mod3(a*a%m,n/2,m)*a%m:mod3(a*a%m,n/2,m):1;}
      | ^~~~
main.c: In function ‘mod3’:
main.c:7:1: warning: type of ‘a’ defaults to ‘int’ [-Wimplicit-int]
main.c:7:1: warning: type of ‘n’ defaults to ‘int’ [-Wimplicit-int]
main.c:7:1: warning: type of ‘m’ defaults to ‘int’ [-Wimplicit-int]
main.c: At top level:
main.c:8:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
    8 | mod4(a,n,m){
      | ^~~~
main.c: In function ‘mod4’:
main.c:8:1: warning: type of ‘a’ defaults to ‘int’ [-Wimplicit-int]
main.c:8:1: warning: type of ‘n’ defaults to ‘int’ [-Wimplicit-int]
main.c:8:1: warning: type of ‘m’ defaults to ‘int’ [-Wimplicit-int]
main.c: At top level:
main.c:14:1: warning: data definition has no type or storage class
   14 | a,n,m;
      | ^
main.c:14:1: warning: type defaults to ‘int’ in declaration of ‘a’ [-Wimplicit-int]
main.c:14:3: warning: type defaults to ‘int’ in declaration of ‘n’ [-Wimplicit-int]
   14 | a,n,m;
      |   ^
main.c:14:5: warning: type defaults to ‘int’ in declaration of ‘m’ [-Wimplicit-int]
   14 | a,n,m;
      |     ^
main.c:15:1: warning: return type defaults to ‘int’ [-Wimplicit-int]
   15 | main(){
      | ^~~~
main.c: In function ‘main’:
main.c:16:9: warning: implicit declaration of funct

ソースコード

diff #

gcd(p,q){return q?gcd(q,p%q):p;}
phi(m){
	int i,s=0;
	for(i=1;i<m;i++)s+=gcd(m,i)==1;
	return s;
}
mod3(a,n,m){return n?n%2?mod3(a*a%m,n/2,m)*a%m:mod3(a*a%m,n/2,m):1;}
mod4(a,n,m){
	if(m==1)return 0;
	if(n==0)return 1;
	return mod3(a%m,mod4(a,n-1,phi(m))+m*phi(m),m);
}

a,n,m;
main(){
	scanf("%d%d%d",&a,&n,&m);
	printf("%d",mod4(a,n,m));
	return 0;
}
0