結果
| 問題 |
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 |
ソースコード
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)
ntuda