POI - Spies
Author: Benjamin Qi
Same thing as "Tree Matching" but on a functional graph. We can use the same greedy strategy of repeatedly matching a leaf to an adjacent vertex.
MLE:
int n, spy[MX];bool vis[MX], used[MX];vi adj[MX];int sum;void dfs(int x) {vis[x] = 1;trav(t,adj[x]) if (!vis[t]) {dfs(t);
OK:
int n, spy[MX], ST[MX], EN[MX], adj[MX];bitset<MX> vis, used;int sum;void dfs(int _) {vi st{_};while (sz(st)) {int x = st.bk; vis[x] = 1;if (ST[x] == EN[x]) {