摘要: DFS解法:http://www.cnblogs.com/E-star/archive/2012/08/11/2633842.htmlhttp://poj.org/problem?id=1691题意:给定一个大矩形,然后给出n个需要染色的小矩形的左上角的坐标,右下角的坐标以及该矩形要染得颜色,每个颜色对应的一把刷子。问将这些小矩形染完规定的颜色之后需要最少的刷子数。要求:只当该小矩形的上边的矩形都染完色之后,该矩形才能染色,如果同一个刷子被使用多次也要计算进来;View Code #include <cstdio>#include <cstring>#include & 阅读全文
posted @ 2012-08-11 21:07 E_star 阅读(263) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=1691题意:给定一个大矩形,然后给出n个需要染色的小矩形的左上角的坐标,右下角的坐标以及该矩形要染得颜色,每个颜色对应的一把刷子。问将这些小矩形染完规定的颜色之后需要最少的刷子数。要求:只当该小矩形的上边的矩形都染完色之后,该矩形才能染色,如果同一个刷子被使用多次也要计算进来;思路:首先根据一个矩形的所有上部分染完之后才能染色建立关系图,然后根据拓扑排序的理论,找入度为0的点开始染色,(因为入度为0 表明其上部的所有矩形都已经染色),dfs所有点求最小值。注意这里画的边只是统计度数用的,而我们真正用来描述可行的边是根据经过该点之后的剩余点里 阅读全文
posted @ 2012-08-11 17:36 E_star 阅读(367) 评论(0) 推荐(0) 编辑
摘要: http://poj.org/problem?id=3373题目意思:给出2个整数N(n<10^100)和K(k<10000),求满足以下条件的整数M1、M与N位数相同2、M能被K整除3、满足以上两点时,M和N不同位数最少4、满足以上三点时,M值最小思路:题目意思很好理解,我们只要以n为基础分两个方向搜索即可,1:首先搜索比n小的,这样保证在为数不同的前提下,M值最小;2:搜索比n大的,详细的解题报告:http://blog.csdn.net/lyy289065406/article/details/6698787解题报告中说只要改变n的5位就一定能够找到解(由鸽巢定理得 k最多为 阅读全文
posted @ 2012-08-11 15:15 E_star 阅读(272) 评论(0) 推荐(0) 编辑