暑假集训-基础图论

5 /  37 Problem A HUST 1019 A dangerous trip 10 /  71 Problem B HUST 1631 Road System     Problem C UVALive 3523 Knights of the Round Table   1 /  5 Problem D UVALive 5135 Mining Your Own Business 1 /  1 Problem E UVALive 4287 Proving Equivalences 0 /  2 Problem F Gym 100216E Shortest Path     Problem G POJ 3177 Redundant Paths     Problem H POJ 1236 Network of Schools     Problem I URAL 1752 Tree 2 5 /  5 Problem J POJ 1330 Nearest Common Ancestors 4 /  16 Problem K POJ 1470 Closest Common Ancestors

A

  求将任意一条路径缩短一半后的最短路。

  两种方法。1.先求起点的最短路,每条边反向后再求一遍终点的。然后枚举每条边折半,求出答案。2.将每个点看成两点,原图分为上下两层,如果A到B有一条权值C的边,则A到B'有一条C/2的边,这样做一遍最短路就是答案。注意边是整数,但答案可能是小数,最好把边都*2。

B

  最小生成树。

C

  圆桌骑士,经典题,还未做。

D

  井底矿工。

E

  等价性证明,给一个有向图 ,问最少加多少条边编程强连通图。

  先求强连通分量,再将每个强连通分量缩成一个点,因为他们之间已经是互相等价的了。再根据处理后的图 求出图的总出度和总入度,较大值就是答案。

F

  做一遍spfa,如果遇到负环就dfs一遍这个点,那么遍历 到的点都是不存在最短路的,标记为'-'。最后输出即可。

  不知道我的代码有什么问题,一直不能过。

J,K

  裸LCA。

  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值