結果
| 問題 |
No.1105 Many Triplets
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2020-07-03 22:36:27 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 468 bytes |
| コンパイル時間 | 111 ms |
| コンパイル使用メモリ | 12,288 KB |
| 実行使用メモリ | 11,008 KB |
| 最終ジャッジ日時 | 2024-09-17 04:18:16 |
| 合計ジャッジ時間 | 2,021 ms |
|
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 5 WA * 2 RE * 18 |
ソースコード
n = int(input())
a = list(map(int,input().split()))
M = 10 ** 9 + 7
p = [1, 1, 0, -3, -9, -18]
q = [-1, -2, -3, -3, 0, 9]
r = [0, 1, 3, 6, 9, 9]
def g(n, l):
if n >= 6:
return pow(M - 27, n // 6, M) * g(n - 6, l) % M
return l[n] if l[n] >= 0 else M + l[n]
ll = [g(n - 2, l) for l in (p, q, r)]
res = []
for k in range(3):
cnt = 0
for j, i in enumerate(ll):
cnt += i * a[(j + k) % 3]
cnt %= M
res.append(cnt)
print(*res)