题目地址:HDU 2686       HDU 3376
这两道题目除了数据大小外是一样的。前者只有30*30,但是后者却成了600*600。。本来以为前者代码用到后者会超时,迟迟没敢交,但是感觉能用费用流的话也只能这么做了,于是改了改数组大小就交上去了。还真没超时。。
这题又是一道关于来回最短路的。最大费用可以把费用改成相反数,最后再转成相反数就是最大费用了。
建图思路是拆点,限制每个点只...
                            
                            
                                分类:
其他好文   时间:
2014-07-27 11:42:55   
                                阅读次数:
249
                             
                    
                        
                            
                            
                                题意:有一堆多米诺骨牌,其中有n个关键牌,起到连接的作用,某些关键牌之间有一串普通牌,推倒用,推倒有一定时间消耗,每次都从第一个关键牌开始推,问推倒需要多少时间。
结果有两种可能的情况:第一种是最后一个倒下的是一个关键牌。第二种是最后一个倒下的是两个关键牌之间的一个普通牌,不一定是正中间的那个,不过题目只需要输出关键牌或者两个关键牌之间,第二种情况不需要知道具体的牌时哪个。
思路:di...
                            
                            
                                分类:
其他好文   时间:
2014-07-27 11:37:35   
                                阅读次数:
317
                             
                    
                        
                            
                            
                                题意:给你一部字典,上面有n个成语,成语3个字或4个字,每个汉字由四位16进制位表示,现要求从中选一些成语来进行接龙游戏,即后一个成语的第一个字和前一个成语的最后一个字一样,找到一个成语后要过T的时间才能找到下一个成语,要求成语接龙用字典中第一个成语开始,到最后一个成语结束。
题目说的很复杂,其实就是个最短路,判断成语A的末四位和成语B的前四位是否相同,相同则建边,然后就是有向图最短路裸...
                            
                            
                                分类:
其他好文   时间:
2014-07-27 11:31:12   
                                阅读次数:
181
                             
                    
                        
                            
                            
                                最短路
Time Limit: 5000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 30972    Accepted Submission(s): 13345
Problem Description
在每年的校赛里,所有进入决赛的同学都会获...
                            
                            
                                分类:
其他好文   时间:
2014-07-26 17:18:02   
                                阅读次数:
275
                             
                    
                        
                            
                            
                                思路:用递归的方法求解。输入:二叉树的根节点;输出:二叉树的最小深度。最小深度的定义:从根节点到叶子节点的最短路径上的节点数。算法如下:将二叉树分为这么几种情况:传入的根节点为空,返回NULL;传入根节点不为空,左子树为空,右子树为空,返回最小深度1;传入根节点不为空,左子树为空,右子树不为空,返回...
                            
                            
                                分类:
其他好文   时间:
2014-07-26 17:08:21   
                                阅读次数:
424
                             
                    
                        
                            
                            
                                map函数辅助求解最短路径,dijkstra算法,邻接表表示。...
                            
                            
                                分类:
其他好文   时间:
2014-07-26 15:32:13   
                                阅读次数:
248
                             
                    
                        
                            
                            
                                Floyd算法计算每对顶点之间的最短路径的问题
题目中隐含了一个条件是一个人可以同时将谣言传递给多个人
题目最终的要求是时间最短,那么就要遍历一遍求出每个点作为源点时,最长的最短路径长是多少,再求这些值当中最小的是多少,就是题目所求
#include
using namespace std;
int n,x,p,t;
int m[120][120],dist[120][120],Max[12...
                            
                            
                                分类:
其他好文   时间:
2014-07-26 15:21:20   
                                阅读次数:
214
                             
                    
                        
                            
                            
                                题目地址:HDU 3468
这道题的关键在于能想到用网络流。然后还要想到用bfs来标记最短路中的点。
首先标记方法是,对每一个集合点跑一次bfs,记录所有点到该点的最短距离。然后对于任意一对起始点来说,只要这个点到起点的最短距离+该点到终点的最短距离==起点到终点的最短距离,就说明这点在某条从起点到终点的最短路上。
然后以集合点建X集,宝物点建Y集构造二分图,将从某集合点出发的最短路中经过宝...
                            
                            
                                分类:
其他好文   时间:
2014-07-26 15:15:10   
                                阅读次数:
296