摘要: 题目链接:2010 ACM-ICPC Multi-University Training Contest(1)——Host by FZU昨天superbin把这套题拿出来做练习,5个小时过去了,杯具就这样发生了,一道都没过!比赛后,看了wzc大牛的解题报告,刷了三道hdu3433: A Task ProcessDP + 二分枚举k表示第i个工人完成k件甲任务,(T - Ai... 阅读全文
posted @ 2010-08-09 16:12 ylfdrib 阅读(1210) 评论(0) 推荐(0) 编辑
摘要: 初学双连通分量,刷了第一道题,纪念!题意:有F个牧场,R条道路,形如<A, B>,表示牧场A到牧场B有一条通路(双向的),给出路保证每两个牧场都有通路,有些cow每次都得走同样的路有A到B。问:再建最少的路使得任意两个牧场间都有两条不同的路,不同,指的是由A到B的过程中没有经过任一同一段路。分析:双连通分量,正好保证了切断任何一条边,都不影响分量中任何两个顶点的连通性,也就是说双连通分... 阅读全文
posted @ 2010-08-08 11:10 ylfdrib 阅读(547) 评论(0) 推荐(0) 编辑
摘要: 转载自原博客:beyond the void[有向图强连通分量]在有向图G中,如果两个顶点间至少存在一条路径,称两个顶点强连通(strongly connected)。如果有向图G的每两个顶点都强连通,称G是一个强连通图。非强连通图有向图的极大强连通子图,称为强连通分量(strongly connected components)。下图中,子图{1,2,3,4}为一个强连通分量,因为顶点1,2,3... 阅读全文
posted @ 2010-08-08 10:46 ylfdrib 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 转载自原博客:beyond the void [点连通度与边连通度]在一个无向连通图中,如果有一个顶点集合,删除这个顶点集合,以及这个集合中所有顶点相关联的边以后,原图变成多个连通块,就称这个点集为割点集合。一个图的点连通度的定义为,最小割点集合中的顶点数。类似的,如果有一个边集合,删除这个边集合以后,原图变成多个连通块,就称这个边集为割边集合。一个图的边连通度的定义为,最小割边集合中的边数。[双... 阅读全文
posted @ 2010-08-08 10:36 ylfdrib 阅读(610) 评论(0) 推荐(0) 编辑
摘要: 上一篇我刷了pku的三道,都是用Tarjan写的代码,主体部分相同,唯独处理不一样,在这里仅提供每道题的思路。hdu1827 Summer Holiday分析:wiskey大牛要通过电话通知大家,如果你有别的队员的电话,就可以有你代劳通知这些人,通知每个人的话费是不一样的,wiskey要花费最少达到通知所有人的目的。打电话这种模型具有传递性,用<A, B>来表示A可以通知到B,即如果&... 阅读全文
posted @ 2010-08-06 20:37 ylfdrib 阅读(591) 评论(0) 推荐(0) 编辑
摘要: 刚学到强连通分支及其缩点,瞻仰了下牛人博客:BYVoid, 这里图文并茂,非常清晰的讲了Tarjan算法的流程,很快我就看懂了!看来,牛人就是不一样啊。我感觉Tarjan还是蛮不错的,时间复杂度在O(n + m),已经很低了。而且这位大牛提供的伪码相当不错,一看便懂!找了三道题刷了一下,感觉这三道题都差不多,主要部分代码相同,唯有问题不一样,最后不同的处理即可。pku1236 Network of... 阅读全文
posted @ 2010-08-06 09:25 ylfdrib 阅读(1093) 评论(0) 推荐(0) 编辑
摘要: Farm Tour题意简单:FJ有N个农场,M条路,FJ要领朋友游玩,从1走到N,再回到1,不走重复路,每条路长度不一样,问最短路长为多少。转化为最小费用流来求解,建一源点S,指向节点1,容量为2,距离0,建一汇点T,N节点指向汇点,容量为2,距离为0,表示要有两条路从S到T,其余给定的路,容量为1,边权为路长,表示每条路只走一次。刚学的最小费用流,用邻接表实现了一下: 阅读全文
posted @ 2010-08-05 07:53 ylfdrib 阅读(1287) 评论(0) 推荐(0) 编辑
摘要: Minimum Cost最近在看最小费用最大流,找了道题,练了练,还是比较简单的。题意很明确,有N个店主和M个供应商,有K种商品,每个店主对每个商品的需求量不一样,每个供应商对每个商品的库存量也不同,每种商品有不同的供应商提供给不同的店主,价格也不一样,都已给出,求满足店主所有要求的最小花费。由于各个商品互不干扰,就对每种商品求一次最小费用最大流就行了。建一个源点S = 0, 汇点T = N + ... 阅读全文
posted @ 2010-08-02 21:29 ylfdrib 阅读(609) 评论(0) 推荐(0) 编辑
摘要: Minimum Transport Cost题意很简单,有N个城市,两两之间的距离用一个邻接矩阵给出。问题关键在于,找出最短路,并输出字典序最小的一条。以前一直也没想过这个问题,没想过怎么把最短的一条输出来。其实也不较简单,就是先用Floyd求得点对距离,在按照字典序dfs,把最短距离作为一个强剪枝来用,得到的第一个合法路径即为最短最小字典序路径。路径的输出可以用递归的形式来实现。代码 阅读全文
posted @ 2010-08-02 20:50 ylfdrib 阅读(555) 评论(0) 推荐(0) 编辑
摘要: hdu1515Anagrams by Stack深搜能过,想好搜索技巧,很容易过。题意:给你两个字符串,问:第一个字符串按入栈出栈规则,能否达到第二个字符串,输出所有的方法,i表示入栈,o表示出栈。用dfs模拟第一个字符串入栈出栈过程:1. 当前字符入栈,就向下一层递归,即搜向下一个字符2. 栈顶元素出栈,对新的栈顶元素判断这题要求按字典序输出,这种先判断入,再判断出的方法正好符合。代码hdu14... 阅读全文
posted @ 2010-08-02 20:41 ylfdrib 阅读(964) 评论(0) 推荐(1) 编辑