ZOJ 2760 How Many Shortest Path
2015-06-08 17:50
197 查看
题目大意:给定一个带权有向图G=(V, E)和源点s、汇点t,问s-t边不相交最短路最多有几条。(1 <= N <= 100)
题解:从源点汇点各跑一次Dij,然后对于每一条边(u,v)如果保证d[s][u]+d[u][v]+d[v][t]==d[s][t]就加边1,然后跑最大流就好。
然而为什么不能是d[s][u]+d[u][t]==d[s][t]呢?我给个反例好了。
比如看这个图:(这是我用Gve写的最丑的图了将就看吧)
会发现(1,3)这条边也被加进去了,然后就没有然后了。
题解:从源点汇点各跑一次Dij,然后对于每一条边(u,v)如果保证d[s][u]+d[u][v]+d[v][t]==d[s][t]就加边1,然后跑最大流就好。
然而为什么不能是d[s][u]+d[u][t]==d[s][t]呢?我给个反例好了。
比如看这个图:(这是我用Gve写的最丑的图了将就看吧)
digraph G{ 1->2[label="1"]; 1->3[label="3"]; 2->3[label="1"]; 3->4[label="1"]; 2->4[label="2"]; }
会发现(1,3)这条边也被加进去了,然后就没有然后了。
相关文章推荐
- 浅谈android中的目录结构
- ubunbtu 更新
- How-to: resolve " java.lang.OutOfMemoryError: unable to create new native thread" for hbase thrift
- 本人初学android,希望大神帮忙指点学习路线,现在好迷茫
- Java 分治算法实现排序数索引(二分搜索)
- 《Unix内核源码剖析》读书笔记02-进程管理【父进程与子进程】
- 轻量级框架和重量级框架对比
- .LDS 文件详解
- Mini2440学习笔记(二)——GPIO
- 使用 call_user_func_array() 来回调执行函数和直接调用函数的区别是什么?
- 编程范式与语言
- 玩转iOS开发 - JSON 和 Xml 数据解析
- Android 调用本地通讯录,广播接收
- 1002-HBase本地安装方式
- 51nod:天堂里的游戏
- Servlet中的过滤器(拦截器)Filter与监听器Listener的作用和区别
- 光华管理学院学生研究报告-关于速表创业
- 51nod:天堂里的游戏
- extjs 4.2 高度自适应
- 黑马程序员——Java基础---Date/ Calender