結果

問題 No.1017 Reiwa Sequence
ユーザー Kiri8128
提出日時 2020-04-04 02:15:21
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 113 ms / 2,000 ms
コード長 763 bytes
コンパイル時間 171 ms
コンパイル使用メモリ 81,792 KB
実行使用メモリ 159,440 KB
最終ジャッジ日時 2024-07-03 06:44:12
合計ジャッジ時間 33,624 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 50
権限があれば一括ダウンロードができます

ソースコード

diff #

N = int(input())
A = [int(a) for a in input().split()]
K = min(N, 22)
B = A[:K]

D = {1<<i: i for i in range(22)}
X = [0] * (1 << 22)
Y = [0] * (1 << 22)
for ii in range(K):
    a = B[ii]
    iii = 1 << ii
    for i in range(1 << ii, 1 << ii + 1):
        x = X[i - iii] + a
        X[i] = x
        if Y[x]:
            j = Y[x]
            k = i & j
            i ^= k
            j ^= k
            for s in range(K):
                if i >> s & 1:
                    pass
                elif j >> s & 1:
                    A[s] *= -1
                else:
                    A[s] = 0
            for s in range(K, N):
                A[s] = 0
            print("Yes")
            print(*A)
            exit()
        else:
            Y[x] = i
print("No")
0