最短路
文章平均质量分 80
Colin_27
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
uva11090 Going in Cycle!!
题意:找到图中平均权值最小的回路思路:假设答案是val 那么图中的边权值减去val,原来的回路便会成为负圈 val的值可以通过二分+spfa判负圈完成原创 2013-10-25 23:03:08 · 796 阅读 · 0 评论 -
uva11374 Airport Express
这道题和hdu4081Qin Shi Huang's National Road System很像 都是需要枚举免费的那条路主要是要两次预处理 一次是起点到任一点的最短路 再是终点到任一点的最短路那么对于每一条免费路线(u, v) 答案便是dis[u](起点至u) + dis[v](终点到v) + w(u, v)原创 2013-10-25 22:57:17 · 770 阅读 · 0 评论 -
hdu3666 THE MATRIX PROBLEM
这道题题号真吉利啊 这道题是判断是否存在两个数组a,b是的对给定的矩阵c满足L <= c[i][j] * a[i] / b[j] <= U 把乘除号 看作加减号 (或者直接两边取log)那么就是两个不等式 转换成差分约束系统判断是否存在负圈就好spfa下来会超时 ,有两种方法可以解决 一是将入队次数改为根号n即可 (不要问为什么,我也不知道哪里看到过) 不推荐二是用dfs判断 速度也很快原创 2013-10-22 21:16:54 · 802 阅读 · 0 评论 -
hdu4085 Peach Blossom Spring
看题表示不会,百度后发现是斯坦纳树,又没见过...大致是状态DP通过枚举子树或者最短路来状态转移若两种状态集合没有交集,则可以直接合并 dp[ i ][ j ]=min{ dp[ i ][ j ],dp[ i ][ k ]+dp[ i ][ l ] },其中k和l是j的两个互补的子集若i和i'之间有边相连, 那么可以通过spfa的三角不等式进行状态转移 dp[ i ][ j ]=min{ dp[ i ][ j ],原创 2013-10-22 13:00:06 · 764 阅读 · 0 评论 -
hdu4360 spfa+拆点
题目要求必须按照L O V E 的顺序行走,且必须至少有一个完整的LOVE,说明可以经过同一个点多次对每个点拆分为4个点,分别为从L,O,V,E到达。起始点看做是从E到达的spfa时发现当前点距离相同,比较经过的边数,此时若边数更大,也要入队列!因为要更新后面的点经过的边数trick 是点可以有自环,当N = 1时1 41 1 1 L1 1 1 O1 1 1 V1原创 2014-07-10 15:19:53 · 1058 阅读 · 0 评论
分享