結果
問題 | No.1448 和差算 |
ユーザー | googol_S0 |
提出日時 | 2021-03-31 14:17:22 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 40 ms / 2,000 ms |
コード長 | 407 bytes |
コンパイル時間 | 664 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 53,636 KB |
最終ジャッジ日時 | 2024-12-14 18:59:21 |
合計ジャッジ時間 | 3,130 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 36 |
ソースコード
mod=10**9+7 A,B,C,D=map(int,input().split()) N=int(input()) X=[[[1, 0], [0, 1]], [[1, -1], [1, 1]], [[0, -2], [2, 0]], [[-2, -2], [2, -2]], [[-4, 0], [0, -4]], [[-4, 4], [-4, -4]], [[0, 8], [-8, 0]], [[8, 8], [-8, 8]]] Y=[[A,B],[C,D]] ANS=-(10**30) M=N&7 for i in range(2): for j in range(2): ANS=max(ANS,Y[0][i]*(X[M][0][0]+X[M][1][0])+Y[1][j]*(X[M][0][1]+X[M][1][1])) print(ANS*pow(16,N>>3,mod)%mod)