結果

問題 No.1681 +-*
ユーザー hitonanodehitonanode
提出日時 2021-08-08 16:49:42
言語 PyPy3
(7.3.15)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 384 bytes
コンパイル時間 163 ms
コンパイル使用メモリ 82,304 KB
実行使用メモリ 107,648 KB
最終ジャッジ日時 2024-06-29 19:25:37
合計ジャッジ時間 12,814 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 36 ms
53,132 KB
testcase_01 AC 40 ms
51,840 KB
testcase_02 AC 38 ms
52,352 KB
testcase_03 AC 37 ms
52,352 KB
testcase_04 AC 38 ms
52,608 KB
testcase_05 AC 78 ms
98,304 KB
testcase_06 AC 78 ms
97,920 KB
testcase_07 AC 85 ms
100,480 KB
testcase_08 TLE -
testcase_09 TLE -
testcase_10 TLE -
testcase_11 TLE -
testcase_12 TLE -
testcase_13 AC 61 ms
82,460 KB
testcase_14 AC 96 ms
102,284 KB
testcase_15 AC 37 ms
53,232 KB
testcase_16 AC 37 ms
52,476 KB
testcase_17 AC 680 ms
102,112 KB
testcase_18 AC 454 ms
101,932 KB
testcase_19 TLE -
権限があれば一括ダウンロードができます

ソースコード

diff #

# TLE
N = int(input())
A = list(map(int, input().split()))

md = 1000000007

ret, prod = 0, 1
d23 = 2 * pow(3, md - 2, md)

for i, a in enumerate(A):
    ret *= 3  # mod をとっていない
    if prod:
        prod = prod * a % md
        ret += prod * (d23 if i < N - 1 else 1) % md
    else:
        ret *= pow(3, N - 1 - i, md)
        break

print(ret % md)
0