HDU 6166 Spfa】的更多相关文章

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6166 题意:给出一个n个点的有向图.然后给你k个点,求这k个点任意两点之间的最短路的最小值.思路: 以这k个点为起点,维护每个点的最短路和次短路,并且,次短路的祖先不能是本身. 先给几组样例: 55 61 2 1002 5 1005 1 1003 2 1002 4 14 3 121 3 5 61 2 1002 5 1005 1 1003 2 1002 4 14 3 121 3 4 51 3 13 1…
http://acm.hdu.edu.cn/showproblem.php?pid=6166 题意: 给出一张无向图,给定k个特殊点 求这k个特殊点两两之间的最短路 二进制分组 枚举一位二进制位 这一位为1的放到起点集合 这一位为0的放到终点集合 跑一遍两个集合间的最短路 因为是有向图,反过来再跑一遍 正确性分析: 设最优解是x和y间的最短路 若x和y被分在了两个不同的集合,那么两个集合的最短路就是x和y的最短路 而任意两个点至少有一位二进制不同 所以一定会有x和y分在两个不同集合的时候 #in…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6166 题意:给你一个有向图,然后给你k个点,求其中一个点到另一个点的距离的最小值. 解法:枚举二进制位按照标号当前位为1 和当前位为0分为两个集合,每次求解两个集合之间的最短路即可覆盖到所有的点对.时间复杂度20*dijstla时间,这样做的正确性在哪?显然我们需要的答案至少有一个二进制位不同,那么这样求解肯定可以找到正确答案,事实上还可以随机分组emmmm... #include <bits/st…
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4568 思路:先用spfa预处理出宝藏与宝藏之间的最短距离,宝藏到边界的最短距离,然后就是经典的求TSP过程了. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> #include<queue> using namespace std; #define M…
XYZZY Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 5304    Accepted Submission(s): 1510 Problem Description It has recently been discovered how to run open-source software on the Y-Crate gam…
这道题是长沙邀请赛的题,当时是道签到题. 这种题还是很常见的,讲一下思路. 首先是预处理出每个宝藏之间的距离,还有到边的距离,直接对每个宝藏进行一次SPFA就可以了. 然后就是经典的求TSP的过程. #include <set> #include <map> #include <stack> #include <cmath> #include <queue> #include <cstdio> #include <string&…
Key Vertex Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Submission(s): 1347    Accepted Submission(s): 305 Problem Description You need walking from vertex S to vertex T in a graph. If you remove one vert…
Invitation Cards Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 2972    Accepted Submission(s): 1385 Problem Description In the age of television, not many people attend theater performances.…
这题作为模板题,解法好多... 最近周围的人都在搞图论阿,感觉我好辣鸡,只会跟风学习. 暂时只有SPFA和Dijkstra的 SPFA (邻接表版.也可以写成临接矩阵存图,但题目可能给出平行边的,所以要注意找最小的边储存,还要注意判断一个点是否多次进入队列)老实说觉得SPFA好像只是被队列优化过的ford一样的.. #include <stdio.h> #include <algorithm> #include <iostream> #include <strin…
题目链接 Problem Description Senior Pan fails in his discrete math exam again. So he asks Master ZKC to give him graph theory problems everyday.The task is simple : ZKC will give Pan a directed graph every time, and selects some nodes from that graph, yo…