题目大概意思:输入n,m,n代表n个点,接着输入n个点之间的距离(n*n的矩阵),接下来m次询问,输入a,b,c如果a,b之间的最短路径中存在c点则输出Yes,否则输出No
比赛的时候没有做出来,赛后帆哥一点播就知道了。。。。我写的时候直接用floy算法求距离并记录路径。。然后TLE到死。。。我就奇怪了数据n,m都小于100,怎么会TLE啊。。。坑爹啊。。。我一直怀疑是不是用别的算法。。。。。帆...
分类:
编程语言 时间:
2014-11-09 22:22:59
阅读次数:
224
Day1
T1
这个题其实就是考你会不会编程。
T2
题目有坑点,说n个点的无向图上有n-1条边,很明显这是棵树。
因为是树,所以我们没必要跑最短路,而且世界上还没这么快的最短路算法能A掉这个题。
下面是ydc的思路
考虑距离为2的点对,可以理解为枚举i,i能走到的点集两两之间距离为2
我们要做的是对于一个数组a1,a2,a3,…,am,要求aiaj,i≠j的Σ与max
...
分类:
其他好文 时间:
2014-11-09 19:35:33
阅读次数:
252
HDU 3313 Key Vertex
题目链接
题意:一个有向无环图,求s,t之间的割点
思路:先spfa找一条最短路出来,如果不存在,就n个都是割点。
然后每次从s进行dfs,找到能经过最短路上的最远点,然后这个点就是割点,然后下次在以这个为起点dfs,不断迭代直到找到t为止
代码:
#include
#include
#include
#include ...
分类:
其他好文 时间:
2014-11-09 18:07:12
阅读次数:
180
题意:
求有向图中最短路和比最短路大1的路径数量。
思路:
需要理解dijkstra算法中dis[n]数组的含义,设cnt[i]表示到点i的最短路径数量,cnt1[i]表示到点i比最短路大1的路径数量。在运行dijkstra算法的过程中每次获得最小dis[i]的时候可以对所有dis[v]+w(v,i)==dis[i]的v做如下更新cnt[i]+=cnt[v],cnt1[i]+=cnt1[v]...
分类:
其他好文 时间:
2014-11-09 15:23:07
阅读次数:
190
题目大意:给定一个无向图,聪聪在起点,可可在终点,每个时刻聪聪会沿最短路走向可可两步(如果有多条最短路走编号最小的点),然后可可会等概率向周围走或不动,求平均多少个时刻后聪聪和可可相遇
今天早上起床发现194了然后就各种刷……当我发现199的时候我决定把第200题交给05年NOI仅剩的一道题……结果尼玛调了能有一个小时……我居然没看到编号最小这个限制0.0
首先我们知道,由于聪聪走两步而可可走...
分类:
其他好文 时间:
2014-11-07 20:58:56
阅读次数:
297
注:模板以hdu 2544 为例
Problem Description
在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt。但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店到赛场的路线,你可以帮助他们吗?
Input
输入包括多组数据。每组数据第一行是两个整数N、M(N...
分类:
其他好文 时间:
2014-11-07 20:49:40
阅读次数:
305
题目:poj 2449 Remmarguts' Date
题意:给出一个图,求k短路。
算法:SPFA求最短路 + AStar
下面引用大牛的分析:
首先,为了说话方便,列出一些术语:
在启发式搜索中,对于每个状态 x,启发函数 f(x) 通常是这样的形式:
f(x) = g(x) + h(x)
...
分类:
其他好文 时间:
2014-11-07 13:09:16
阅读次数:
156
最短路径问题是图论研究中的一个经典算法问题, 旨在寻找图(由结点和路径组成的)中两结点之间的最短路径。 算法具体的形式包括:...
分类:
其他好文 时间:
2014-11-07 11:23:42
阅读次数:
233
裸的最短路呢。。。建图还是有些微妙的。。。但是感觉不快啊。。。每个时间点建一个点,然后我们建图分两步:(1)i 时间点向 i - 1 号时间点连一条有向边(2)若有一头牛[l, r],则 l - 1向 r连一条边最后答案就是dis[T]想想就觉得非常巧妙。。。但是慢啊。。。 1 /*********...
分类:
其他好文 时间:
2014-11-06 23:33:09
阅读次数:
219
题意:
n(2000)个点的图 给出它的最短路矩阵 用n条边构造出满足最短路矩阵的图 保证图连通且解存在
思路:
我们可以先保证图连通 那么需要n-1条边 联想到是不是最小生成树??
可以这样想 假设abc点已经连通 现在考虑再加入到连通块中一个点比如d 如果d-b的距离是d到abc三个点中最短的 那么这条边一定要被选 因为如果不选d-b 假设选了d-a 那么d...
分类:
其他好文 时间:
2014-11-06 21:58:15
阅读次数:
234