2016.08.13【初中部 NOIP提高组 一试】模拟赛B

T1:

可以用推理的方式,如果只有两个水或不到两个水直接输出-1即可,当水很多的时候也可以看出一个点,如果有三个方向有水则可以直接输出1,当如上情况都没有的话,则枚举所有水并判断水是否能联通所有水,如果有一个点不能联通就输出1,否则输出2.(细节很多,自己想想)



T2:

刚开始做这题还想着用spfa,结果打了一半才发现可用floyd,就懒得改了,继续spfa,发现spfa可以判断出所经过的点,但是要知道最优解决的那个点很复杂,并且spfa的时间复杂度堪忧,对于每一对顶点都需要做一遍spfa,则spfa的效率是O(n²V*4)——会超时...


其实因为顶点少,且求的不是单源最短路径,而是每两点的距离,则我们可以运用floyd,当floyd对于两点求出两条最短路径时,则代表着两点并无答案.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值