結果
問題 |
No.190 Dry Wet Moist
|
ユーザー |
![]() |
提出日時 | 2020-12-29 01:40:27 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 696 bytes |
コンパイル時間 | 237 ms |
コンパイル使用メモリ | 82,048 KB |
実行使用メモリ | 126,044 KB |
最終ジャッジ日時 | 2024-10-04 08:19:23 |
合計ジャッジ時間 | 4,245 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 16 WA * 12 |
ソースコード
from collections import Counter N = int(input()) A = list(map(int, input().split())) pos = [] neg = [] for a in A: if a >= 0: pos.append(a) else: neg.append(a) dry = 0 p = sorted(pos, reverse=True) tmp = 0 for n in sorted(neg, reverse=True): if p and n + p[-1] < 0: dry += 1 p.pop() else: tmp += 1 dry += tmp // 2 wet = 0 p = sorted(pos) for n in sorted(neg): if p and n + p[-1] > 0: wet += 1 p.pop() while len(p) >= 2: if p.pop() + p.pop() > 0: wet += 1 moist = 0 p = Counter(pos) n = Counter(neg) for k, v in n.items(): vv = p[-k] moist += min(v, vv) moist += p[0] // 2 print(dry, wet, moist)