您的位置:首页 > 其它

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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: