結果
問題 | No.1448 和差算 |
ユーザー | nasubi24 |
提出日時 | 2021-03-31 14:35:13 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 40 ms / 2,000 ms |
コード長 | 529 bytes |
コンパイル時間 | 162 ms |
コンパイル使用メモリ | 82,128 KB |
実行使用メモリ | 53,900 KB |
最終ジャッジ日時 | 2024-12-14 19:14:55 |
合計ジャッジ時間 | 2,801 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 36 |
ソースコード
mod=10**9+7 a,b,c,d=map(int,input().split()) n=int(input()) if n==0: print((b+d)%mod) elif n%2==0: n//=2 if n%4==1: print(pow(2,n,mod)*(b-c)%mod) elif n%4==2: print(pow(2,n,mod)*(-a-c)%mod) elif n%4==3: print(pow(2,n,mod)*(-a+d)%mod) else: print(pow(2,n,mod)*(b+d)%mod) else: n=(n+1)//2 ans=pow(2,n,mod) if n%4==1: print(ans*b%mod) elif n%4==2: print(-ans*c%mod) elif n%4==3: print(-ans*a%mod) else: print(ans*d%mod)