POJ-3268 Silver Cow Party

今天写了道最短路的题,错了很多次,就想把自己错的地方和应该注意的地方贴出来。
TP POJ-3268
题意:很多区域中的一个区域开了个Party,其它区域的奶牛都需要通过一些单行道去参加Party,参加完成后还需要走回原来的区域,每个奶牛走的路都是最短距离,我们需要求出走路最长的奶牛走的距离。
这题明显就是最短路板子题,可是如果只是板子题的话就没必要写它了,我当时卡这题也卡了好久。
起初,我直接背板子,然后直接超时,然后我才意识到我想当然的敲了三重循环。然后就想怎么减一层循环,就另开了一个dis数组去存回来的路,这样的话两重循环就够解这道题了。可是答案错误后来找到原因了,是把回来的路和去的路存反了。但是这依然答案错误。之后发现纰漏之处在于bk数组也是需要两个的,来回的路的bk数组不可共用,这么一来,题目就过了。
以上是我写这题时的一些经过,如果以上依然没有解决问题,建议在最短路代码下输出你的往返两次的ds数组,看看是否出现奇怪的东西。
按样例来说,正向的数组内容应为1 0 3 7,返回的数组为4 0 6 3
如果ds内容没有问题,依然ac不了,那应该就是板子哪里有问题或者在存反向时没有理清边与边之间的关系,就只能再认真检查一下代码了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值