摘要:
算法 二分图+匹配 思路 节点 列与行皆为节点 边 一个子链接一个边与一个列。 0要素 一个子不可在两列或是两行。所以连接一个行与一个趔 1要素 每行只可有一个子,列也一样。 代码 #include<cmath> #include<cstdio> #include<cstring> #include 阅读全文
摘要:
判定 染色法 bool dfs(int x, int color) { v[x] = color; for (unsigned int i = 0; i < e[x].size(); i++) { int y = e[x][i].first; if (v[y]) { if (v[y] == colo 阅读全文
摘要:
算法 二分图+匹配 思路 边 一个骨牌链接两个格子,格子为节点,骨牌为连接两个格子的边。 0要素 将格子黑白染色,同色格子间没有边。 1要素 每个格子只能被1个骨牌覆盖,唯一边。 知识 匈牙利 bool dfs(int x) { for (unsigned int i = 0; i < e[x].s 阅读全文
摘要:
算法 二分图+判定 思路 显然要让答案最小,应让怨气值较大的不在同一监狱。尽量让较小的在同一个监狱里矛盾。及分成两个集合。满足二分图。而后二分答案,以最后的怨气值为mid,凡大于mid的罪犯都需在不同集合,只需判定是否为二分图即可。 核心 二分图判定+染色法 bool dfs(int x, int 阅读全文