摘要:
https://loj.ac/problem/10077 题目描述 给出一张n个节点m条边的无向连通图,求这张图的最短路数量。 思路 我们可以直接进行DIjkstra,在进行最短路算法时,如果dis[u]由dis[v]转移过来,那么根据加法原理,到u的最短路数量ans[u]=ans[v],而对于相等 阅读全文
摘要:
https://loj.ac/problem/10076 题目描述 给出一张图,求它从1到n的严格次短路的长度。 思路 我们可以在求最短路时维护两个数组,一个是dis[v]表示到v的最短路的长度,另一个是scd[v]表示到v的次短路,每次更新节点时我们可以判断并保证scd[v]一定严格小于dis[v 阅读全文
摘要:
https://loj.ac/problem/10075 题目描述 给出n个节点和m条有向边,求从每个节点到x往返的最短路径中的最大值。 思路 由于正着思考我们虽然只能一次求出x到其他各点,但每次要求出i到x的最短路,显然会T掉。我们考虑建原图的反图,那么i到x的最短路可以转化为再反图上x到i的最短 阅读全文
摘要:
https://loj.ac/problem/10074 题目描述 给出一张n个节点、m条边的加权无向图,求一条从1到n的路径,使第k+1大的边权尽可能小。 思路 因为这个答案显然具有单调性,我们考虑对于这个答案进行二分,接下来再想如何确定这个值是否为所求。对于所有大于mid的边,我们把它的边权设为 阅读全文
摘要:
https://loj.ac/problem/6121 题目描述 有一张n×m的网格图,格与格之间可能有门和墙,墙不可经过,门必须有相应的钥匙,求从左上角到右下角的最短路径。 思路 虽然这是网络流24题,但实际上我们可以用更简单的思路——分层图来做。我们考虑p比较小,也就是钥匙的种类比较少,可以状态 阅读全文