結果
問題 |
No.403 2^2^2
|
ユーザー |
![]() |
提出日時 | 2016-12-09 15:23:15 |
言語 | C90 (gcc 12.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 527 bytes |
コンパイル時間 | 118 ms |
コンパイル使用メモリ | 21,248 KB |
実行使用メモリ | 6,820 KB |
最終ジャッジ日時 | 2024-11-28 16:19:44 |
合計ジャッジ時間 | 1,032 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 WA * 6 |
コンパイルメッセージ
main.c: In function ‘run’: main.c:20:3: warning: ignoring return value of ‘scanf’ declared with attribute ‘warn_unused_result’ [-Wunused-result] 20 | scanf("%lld^%lld^%lld",&a,&b,&c); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ソースコード
#include<stdio.h> typedef long long int ln; ln calcPow(ln r,ln n,ln mod){ ln ans=1; ln p=r; while(n>0){ if(n&0x01){ ans=(ans*p)%mod; } p=p*p%mod; n=(n>>1); } return ans; } void run(void){ ln a,b,c; scanf("%lld^%lld^%lld",&a,&b,&c); const ln mod=1000000007; if(a%mod==0){ printf("0 0\n"); return; } printf("%lld ",calcPow(a,(b%(mod-1))*(c%(mod-1))%(mod-1),mod)); printf("%lld\n",calcPow(a,calcPow(b,c,mod-1),mod)); return; } int main(void){ run(); return 0; }