結果

問題 No.1884 Sequence
ユーザー n_na
提出日時 2022-03-26 00:18:06
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 692 bytes
コンパイル時間 248 ms
コンパイル使用メモリ 82,424 KB
実行使用メモリ 136,232 KB
最終ジャッジ日時 2024-10-14 08:41:13
合計ジャッジ時間 6,497 ms
ジャッジサーバーID
(参考情報)
judge3 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 38 WA * 2
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
A = list(map(int, input().split()))
num = A.count(0)

s = set(A)

A.sort(reverse = True)
d = 10**16

for i in range(N-1):
    if A[i+1] == 0:
        break
    tmp = A[i] - A[i+1]
    d = min(tmp, d)

if num >= N-1:
    ans = "Yes"
elif d == 0:
    if (0 in s and len(s) == 2) or len(s) == 1:
        ans = "Yes"
    else:
        ans = "No"
else:
    ans = "Yes"
    for i in range(N-1):
        if A[i+1] == 0:
            break
        diff = A[i] - A[i+1]
        if diff == d:
            continue
        if diff%d != 0:
            ans = "No"
        elif diff%d == 0:
            num -= diff//d - 1
            if num < 0:
                ans = "No"
    
print(ans)

0