結果
問題 | No.583 鉄道同好会 |
ユーザー | mitsuo |
提出日時 | 2017-12-31 17:24:51 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
AC
|
実行時間 | 762 ms / 2,000 ms |
コード長 | 1,017 bytes |
コンパイル時間 | 197 ms |
コンパイル使用メモリ | 12,416 KB |
実行使用メモリ | 31,232 KB |
最終ジャッジ日時 | 2024-12-21 15:30:40 |
合計ジャッジ時間 | 5,083 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 36 ms
10,496 KB |
testcase_01 | AC | 35 ms
10,624 KB |
testcase_02 | AC | 37 ms
10,496 KB |
testcase_03 | AC | 35 ms
10,624 KB |
testcase_04 | AC | 35 ms
10,752 KB |
testcase_05 | AC | 36 ms
10,496 KB |
testcase_06 | AC | 34 ms
10,624 KB |
testcase_07 | AC | 38 ms
10,752 KB |
testcase_08 | AC | 34 ms
10,624 KB |
testcase_09 | AC | 34 ms
10,624 KB |
testcase_10 | AC | 40 ms
10,752 KB |
testcase_11 | AC | 201 ms
15,744 KB |
testcase_12 | AC | 262 ms
17,536 KB |
testcase_13 | AC | 260 ms
17,536 KB |
testcase_14 | AC | 264 ms
17,536 KB |
testcase_15 | AC | 329 ms
19,456 KB |
testcase_16 | AC | 624 ms
27,520 KB |
testcase_17 | AC | 759 ms
31,104 KB |
testcase_18 | AC | 762 ms
31,232 KB |
ソースコード
import collections def solve(N, M, data): count = collections.Counter() unionset = [] for d in data: count.update(d) d0s = None d1s = None for s in unionset: if d[0] in s: d0s = s elif d[1] in s: d1s = s if d0s == None and d1s == None: unionset.append(set([d[0], d[1]])) elif d0s != None and d1s == None: d0s.add(d[1]) elif d0s == None and d1s != None: d1s.add(d[0]) else: unionset.remove(d0s) unionset.remove(d1s) n = d0s.union(d1s) unionset.append(n) oddcount = 0 for val in count.values(): if val % 2 == 1: oddcount += 1 return "YES" if oddcount <= 2 and len(unionset) == 1 else "NO" if __name__ == '__main__': N, M = map(int, input().split()) d = [] for _ in range(0, M): d.append(list(map(int, input().split()))) print(solve(N, M, d))