結果

問題 No.1219 Mancala Combo
ユーザー FromBooska
提出日時 2023-02-22 21:52:24
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 101 ms / 2,000 ms
コード長 729 bytes
コンパイル時間 195 ms
コンパイル使用メモリ 82,304 KB
実行使用メモリ 117,008 KB
最終ジャッジ日時 2024-07-22 22:27:50
合計ジャッジ時間 3,195 ms
ジャッジサーバーID
(参考情報)
judge4 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 26
権限があれば一括ダウンロードができます

ソースコード

diff #

# 逆順ではなく問題通りの順番で考える
# Ai = iとなる最小のAiを崩していく、そうしないと上から降ってきてクリアできなくなる
# Ai = iとなる最小のAiを崩した後、Ai+1以後の合計が降ってくる
# その合計がiの倍数であれば順次クリアできるが、倍数でなければ結局クリアできない
# Aiを保っておくと考えれば、(Ai+以後合計)が倍数かどうかということになる

N = int(input())
A = list(map(int, input().split()))
temp = sum(A)
cum = []
for i in range(N):
    temp -= A[i]
    cum.append(temp)

#print(A)
#print(cum)

ans = 'Yes'
for i in range(N):
    if (A[i]+cum[i])%(i+1) != 0:
        ans = 'No'
print(ans)
0