結果
問題 |
No.403 2^2^2
|
ユーザー |
![]() |
提出日時 | 2019-04-15 06:01:57 |
言語 | C (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 847 bytes |
コンパイル時間 | 490 ms |
コンパイル使用メモリ | 30,080 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-09-21 22:32:45 |
合計ジャッジ時間 | 1,687 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 WA * 4 |
ソースコード
// yukicoder: No.403 2^2^2 // 2019.4.15 bal4u #include <stdio.h> #include <ctype.h> #if 0 #define gc() getchar_unlocked() #else #define gc() getchar() #endif long long in() // 非負整数の入力 { long long n = 0; int c = gc(); do n = 10 * n + (c & 0xf), c = gc(); while (isdigit(c)); return n; } #define MOD 1000000007 int bigPow(int x, long long p, int mod) { int r = 1; while (p) { if (p & 1) r = (long long)r * x % mod; x = (long long)x * x % mod; p >>= 1; } return r; } int main() { long long A, B, C, t; int ans1, ans2; A = in(), B = in(), C = in(); if (A == 1) { puts("1 1"); return 0; } A %= MOD; t = ((B % (MOD - 1))*(C % (MOD - 1))) % (MOD - 1); ans1 = bigPow((int)A, t, MOD); B %= MOD - 1; t = bigPow((int)B, C, MOD - 1); ans2 = bigPow((int)A, t, MOD); printf("%d %d\n", ans1, ans2); return 0; }