AtCoder Regular Contest 036:D - 偶数メートル
問題
https://atcoder.jp/contests/arc036/tasks/arc036_d
考え方
考えていたこと
偶数メートルで到達できればよいので、各辺の長さ については偶奇のみが重要そう。しかし偶数長の辺どおしでの UnionFind、奇数長の辺どおしでの UnionFind を考えてもうまくいかない...
解説
偶数長の集合、奇数長の集合で各頂点をみたときに、辺で頂点を連結されるとき
(1):辺の長さが偶数の場合
偶数長どおしで連結される
(2):辺の長さが奇数の場合
偶数長の頂点と奇数長の頂点で連結される
よって、偶数長の頂点と奇数長の頂点をそれぞれ保持しておいて、辺の長さに応じて上記の操作をすることで連結性を判定できる。解は偶数長の頂点集合として考えたときに が連結であれば、
YES
そうでなければ NO
となる。
Submission #4048526 - AtCoder Regular Contest 036
得た知見(典型ポイント)
- 頂点を倍化してなんやかんやする
- 偶奇の性質(偶数に偶数を足しても偶数、偶数に奇数を足すと奇数)
類題
- 頂点倍化 C - ABland Yard