11 2015 档案

HDU-1532 Drainage Ditches (最大流,EK算法模板)
摘要:题目大意:最大流的模板题。。。源点是0,汇点是n-1。代码如下:# include# include# include# include# include# include# include# include# include# include# includeusing namespace std... 阅读全文

posted @ 2015-11-28 23:27 20143605 阅读(159) 评论(0) 推荐(0)

UVA-10285 Longest Run on a Snowboard (递推)
摘要:题目大意:滑雪。给一个二维数组,找出最长的连续下降序列的长度。题目分析:定义dp(i,j)表示以a[i][j]结尾的最长连续下降序列的长度,则dp(i,j)=max(dp(i-1,j),dp(i+1,j),dp(i,j-1),dp(i,j+1)),重复这个DP过程滚动更新dp数组100次即可(我专门... 阅读全文

posted @ 2015-11-10 17:43 20143605 阅读(209) 评论(0) 推荐(0)

UVA-10615 Rooks (二分图匹配)
摘要:题目大意:在一个nxn的方格中,有些位置有车,要给每一个车都涂上颜色,使得同一行和同一列的任意两个车颜色不同,求一种需要颜色种数最少的涂色方案。题目分析:所需的最少颜色种数是显然就能得出的,假设最少颜色种数为k。如果位置(i,j)是车,那么连一条边i->j,得到一张二分图,进行k次匹配即可构造出解。... 阅读全文

posted @ 2015-11-08 20:30 20143605 阅读(780) 评论(1) 推荐(0)

UVALive-4452 The Ministers' Major Mess (2-SAT)
摘要:题目大意:有n个问题,m个人来投票,没人最多投4票,问该怎样决定才能使每个人都有超过一半的票数被认可?题目分析:2-SAT问题。如果某个人投的票数少于2,则这两票军被采纳,如果票数至少三票,则最多有一票可以不被采纳,这意味着这个人的投的任意两票之间有矛盾,是“二者取一”的关系。代码如下:# incl... 阅读全文

posted @ 2015-11-08 16:37 20143605 阅读(214) 评论(0) 推荐(0)

UVALive-2966 King's Quest(强连通+二分图匹配)
摘要:题目大意:有n个男孩和和n个女孩,已只每个男孩喜欢的女孩。一个男孩只能娶一个女孩、一个女孩只能嫁一个男孩并且男孩只娶自己喜欢的女孩,现在已知一种他们的结婚方案,现在要求找出每个男孩可以娶的女孩(娶完之后不能影响其他男孩结婚)。题目分析:已知的结婚方案是一个完全匹配。从每个男孩出发向他喜欢的女孩连一条... 阅读全文

posted @ 2015-11-08 13:05 20143605 阅读(291) 评论(0) 推荐(0)

UVA-4288 Cat vs. Dog (最大独立集)
摘要:题目大意:猫狗大赛,s个猫和t个狗,有v个投票者,他们不是爱猫者就是爱狗者,所以爱猫者一定会对某条猫投晋级票,对某条狗投淘汰票,爱狗者亦然。现在已知这v个人的投票情况,应该使哪些畜牲晋级或淘汰才能使投票者满意(喜欢的晋级,讨厌的淘汰)的人数最多?求出最多满意人数。题目分析:有同一爱好的人群之间不会有... 阅读全文

posted @ 2015-11-06 15:48 20143605 阅读(261) 评论(0) 推荐(0)

UVALive-3126 Taxi Cab Scheme (DAG的最小路径覆盖)
摘要:题目大意:要给n个人安排车,已知每个人的出发时间和起点与终点,问最少需要安排几辆车才能完成任务。题目分析:最小路径覆盖。如果送完a到目的地后能在b出发之前赶来接b,那么连一条有向边a->b,最终将得到一个DAG。最少路径覆盖数便是答案。解法:把所有节点 i 拆成 i 和 i’,如果 i 和 j 之间... 阅读全文

posted @ 2015-11-06 12:12 20143605 阅读(311) 评论(0) 推荐(0)

UVALive-3415 Guardian of Decency (最大独立集)
摘要:题目大意:一个老师要带一些学生去春游,但是要带的学生中任意两个人都满足下面四个条件中的至少一个:1、性别相同;2、身高差大与40公分;3、最喜欢的音乐类型不同;4、最喜欢的体育运动相同。问老师最多能带多少个学生?题目分析:最大独立集问题。最大独立集+最小覆盖集=全集。将学生视为节点,对于任意两个不满... 阅读全文

posted @ 2015-11-06 10:42 20143605 阅读(322) 评论(0) 推荐(0)

UVA-11419 SAM I AM (最小点覆盖)
摘要:题目大意:在一个n*m的网格中,有k个目标,现在可以任选一行或列消除在其上的所有目标,求出最少选择次数及选法。题目分析:经典的最小点覆盖问题,并且输出一个最小点覆盖集。在求出最大匹配之后,以未覆盖的x点进行标记,沿着未覆盖->覆盖->未覆盖->覆盖...的路径标记,最后x中未标记的和y中标记的点构成... 阅读全文

posted @ 2015-11-05 22:24 20143605 阅读(421) 评论(0) 推荐(0)

UVALive-3989 Ladies' Choice (稳定婚姻问题)
摘要:题目大意:稳定婚姻问题。。。。题目分析:模板题。代码如下:# include# include# include# include# includeusing namespace std;# define LL long long# define REP(i,s,n) for(int i=s;iq;... 阅读全文

posted @ 2015-11-05 17:10 20143605 阅读(168) 评论(0) 推荐(0)

UVA-11383 Golden Tiger Claw (KM算法)
摘要:题目大意:一张可行二分图的权值以邻接矩阵的形式给了出来,现在要找每一个节点的可行顶标,使顶标和最小。题目分析:直接用KM算法,结束后顶标之和最小。。。模板题。代码如下:# include# include# include# include# include# include# includeusi... 阅读全文

posted @ 2015-11-04 15:37 20143605 阅读(252) 评论(0) 推荐(0)

UVA-10816 Travel in Desert (最小瓶颈最短路)
摘要:题目大意:给一张无向图,图中的每条边都有两个权值,长度d和热度r。找出从起点到终点的一条最大热度最小的路径,如果这样的路径有多条,选择一个最短的。题目分析:如果只考虑最小的最大热度,那么本题就是一个最小瓶颈路问题,只需按照热度找一棵最小生成树即可。但是,如果这样的路径有多个,实际上是最小生成树有多个... 阅读全文

posted @ 2015-11-02 17:24 20143605 阅读(566) 评论(0) 推荐(0)

UVA-10369 Arctic Network (最小生成树)
摘要:题目大意:n个村庄的坐标已知,现在要架光纤使所有的村庄都能上网,但受光纤的参数d所限,每根光纤只能给距离不超过d的村庄之间连接。但是有s个信号机,信号机之间能无限畅连。考虑到光纤的价格和参数d有关,现在要确定最小的参数。题目分析:最好的方案当然是把s个信号机都用上,这就相当于在一张必选s-1条边(边... 阅读全文

posted @ 2015-11-02 12:25 20143605 阅读(247) 评论(0) 推荐(0)

UVA-11183 Teen Girl Squad (最小树形图、朱刘算法模板)
摘要:题目大意:给一张无向图,求出最小树形图。题目分析:套朱-刘算法模板就行了。。。代码如下:# include# include# include# includeusing namespace std;# define LL long long# define REP(i,s,n) for(int i... 阅读全文

posted @ 2015-11-01 18:25 20143605 阅读(290) 评论(0) 推荐(0)

UVA-10600 ACM Contest and Blackout (次小生成树)
摘要:题目大意:给一张无向图,找出最小生成树和次小生成树。题目分析:模板题。。。方法就是枚举所有的比最小生成树中两端点之间的最长边还要长的边,用它替换,再取一个最小的值便是次小生成树了。代码如下:# include# include# include# includeusing namespace std... 阅读全文

posted @ 2015-11-01 16:55 20143605 阅读(158) 评论(0) 推荐(0)

UVALive-3887 Slim Span (kruskal)
摘要:题目大意:定义无向图生成树的最大边与最小边的差为苗条度,找出苗条度最小的生成树的苗条度。题目分析:先将所有边按权值从小到大排序,在连续区间[L,R]中的边如果能构成一棵生成树,那么这棵树一定有最小的苗条度。枚举所有这样的区间。代码如下:# include# include# include# inc... 阅读全文

posted @ 2015-11-01 12:18 20143605 阅读(291) 评论(0) 推荐(0)

UVA-11280 Flying to Fredericton (dijkstra)
摘要:题目大意:一张有向图,n个节点,m条边,有边权。求从起点到终点在最多经过s个中间节点(不包括始末点)时的最小权和。题目分析:因为起点和终点是固定的,只需一次dijkstra打出表dis[u][k],查表即可。dis[u][k]表示经过k个中间节点到达u点时的最小费用。要注意,经过的中间节点数不会超过... 阅读全文

posted @ 2015-11-01 00:57 20143605 阅读(164) 评论(0) 推荐(0)