結果
問題 | No.1578 A × B × C |
ユーザー |
|
提出日時 | 2022-10-20 20:50:12 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 363 bytes |
コンパイル時間 | 12,499 ms |
コンパイル使用メモリ | 222,504 KB |
実行使用メモリ | 6,944 KB |
最終ジャッジ日時 | 2024-06-30 12:07:28 |
合計ジャッジ時間 | 11,760 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 22 |
ソースコード
package main import ( "fmt" ) const MOD = 1000000007 func modpow(a int, n int, mod int) int { m := 1 for n > 0 { if n&1 == 1 { m = (m * a) % mod } a = (a * a) % mod n >>= 1 } return m } func main() { var A, B, C, K int fmt.Scan(&A, &B, &C) fmt.Scan(&K) ABC := (A * B % MOD) * C % MOD fmt.Println(modpow(ABC, modpow(2, K, MOD-1), MOD)) }