POJ1112 Team Them Up! 连通图 染色 DP
2011-08-29 20:05
176 查看
思路:
1.本题数据是单向边,说明是有向图,但是其实分析题目,要求是互相认识,
则单向边需要处理成无边,即有向图处理成无向图。
2.求补集。
然后求极大联通分量,在同一个连通分量里的两个人都是互相不认识。
在不同连通分量里的两个人互相认识。
3.
用dfs求联通分量,同时01染色,相邻的点颜色不同。
因为在同一个连通分量里的人都互相不认识,
即我们应该将这个联通分量里的人染色成二分图(x,y),以便于分配到不同的队伍里。
(染色成二分图是为了使之满足题意的两个队伍之间人数最close)。
4.判定no solution情况
二分图xy里,x或者y组里的任意两个人如果在补集里面有边,
则输出"No solution"。(我的理解是无法染色)
原因是这时没办法分成两个队伍,起码要三个队伍。
举例是三个人。 A---B---C----A.形成一个环。则无法染色。A 0 B 1 C 0 A 1(矛盾)。
5.
DP(01背包DP).
上面说的只是对于一个连通分量的处理。
现在 需要用DP思想处理每个连通分量。
关于DP,接触的题目不多,这道题的DP就纠结了。
暂且到这吧。
参考自:
http://hi.baidu.com/z917912363/blog/item/fa54b21f1a21f8c3ac6e755e.html
1.本题数据是单向边,说明是有向图,但是其实分析题目,要求是互相认识,
则单向边需要处理成无边,即有向图处理成无向图。
2.求补集。
然后求极大联通分量,在同一个连通分量里的两个人都是互相不认识。
在不同连通分量里的两个人互相认识。
3.
用dfs求联通分量,同时01染色,相邻的点颜色不同。
因为在同一个连通分量里的人都互相不认识,
即我们应该将这个联通分量里的人染色成二分图(x,y),以便于分配到不同的队伍里。
(染色成二分图是为了使之满足题意的两个队伍之间人数最close)。
4.判定no solution情况
二分图xy里,x或者y组里的任意两个人如果在补集里面有边,
则输出"No solution"。(我的理解是无法染色)
原因是这时没办法分成两个队伍,起码要三个队伍。
举例是三个人。 A---B---C----A.形成一个环。则无法染色。A 0 B 1 C 0 A 1(矛盾)。
5.
DP(01背包DP).
上面说的只是对于一个连通分量的处理。
现在 需要用DP思想处理每个连通分量。
关于DP,接触的题目不多,这道题的DP就纠结了。
暂且到这吧。
参考自:
http://hi.baidu.com/z917912363/blog/item/fa54b21f1a21f8c3ac6e755e.html
相关文章推荐
- POJ1112 Team Them Up! 连通图 染色 DP
- poj1112 Team Them Up!(二分图染色+dp)
- POJ 1112 Team Them Up!【二分图染色+DP】
- poj 1112 Team Them Up! 二分图染色+dp
- 【POJ 1112】Team Them Up!(二分图染色+DP)
- ZOJ 1462 Team Them Up! (二分图+路径保存DP)
- UVA - 1627 Team them up!——二分图染色+01背包
- Uva 1627 Team them up!(dp+二分图染色)
- poj1112 Team Them Up!
- UVA 1627 Team them up!——dp
- POJ1112 Team Them Up![二分图染色 补图 01背包]
- poj1112 Team Them Up! 二分着色 + DP
- UVa1627 - Team them (二分图染色+dp)
- POJ 1112 Team Them Up! (图(反图)染色+连通分量+动态规划) 解释代码
- ZOJ_1462 Team Them Up! 求完连通分量后,再进行背包,之后背包路径回溯
- 9.5-uva-1627-Team them up-动态规划-图-连通分量-DFS(WA)
- uva 1627 Team them up! 二分图 + 连通分量 + 背包
- poj1112 Team Them Up!
- POJ 1112 Team Them Up! (二分图染色+连通分量+DP)
- 图论+dp poj 1112 Team Them Up!