結果

問題 No.1606 Stuffed Animals Keeper
コンテスト
ユーザー ntuda
提出日時 2025-11-13 20:23:45
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 541 bytes
コンパイル時間 375 ms
コンパイル使用メモリ 82,164 KB
実行使用メモリ 84,492 KB
最終ジャッジ日時 2025-11-13 20:23:56
合計ジャッジ時間 10,025 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 29 WA * 19
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

from collections import defaultdict
N = int(input())
A = list(map(int,input().split()))
X = []
tmp = [0,0]
for a in A:
    if a == 2:
        if tmp != [0,0]:
            X.append(tmp)
            tmp = [0,0]
    else:
        tmp[a] += 1
if tmp != [0,0]:
    X.append(tmp)
NX = len(X)
dic1 = {0:0}
for x in X:
    dic2 = defaultdict(lambda:N)
    a,b = x
    for k,v in dic1.items():
        dic2[k-a] = min(dic2[k-a],v + a)
        dic2[k+b] = min(dic2[k+a],v + b)
    dic1 = dic2
if dic1[0] == N:
    print(-1)
else:
    print(dic1[0]//2)
0