标签:图论

题意给出一个 $N$ 点 $M$ 边的有向图,以及 $K$ 个感兴趣的点,求感兴趣的点两两之间最短路的最小值。$N\le 100000 \ , \ M\le 500000$ 。题解如果建立原点和汇点,把 $K$ 个点分成两组,分别与原点汇点相连,再从原点开始跑到汇点的最短路就是最小值。但这样显然无法涵盖所有情况。所以枚举二进制位,把当前位为 $1$ 的加入第一组,其它的放入第二组。因为两个数...
题解 图论-最短/最长路 图论
NOI/NOI+/CTSC
题意给出一个 $N$ 点 $M$ 边的有向图,并给出最短路径。依次删掉最短路上的每条边,求删边后最短路长度。$N\le 10^5 \ , \ M\le 2\times 10^5$ 。题解朴素的做法可以每删一条边就跑一次 $\text{Spfa}$ ,但这样显然会爆。可以发现不需要每次都更新所有点的最短路。如果删除 $(u,v)$ ,那么最短路一定是 $$1\rightarrow x\righ...
题解 图论-最短/最长路 图论
NOI/NOI+/CTSC
题意给出一个 $N$ 点 $M$ 边的有向图,要从 $1\rightarrow D$ 。每条边上有限速,如果限速为 $0$ 则需要按照上一条边的速度走。求最短用时。$N\le 150$ 。题解给朴素的最短路加上一维,用 $dis[x][s]$ 表示在节点 $x$ ,当前速度为 $s$ 的最短用时。然后跑 $\text{Spfa}$ 即可。tips: 对 double 进行 memset 时最...
题解 图论-最短/最长路 图论
提高+/省选-
题意给出一个 $N$ 点无向图,至少有两个连通块。求连接两个连通块的方案,使得新连通块的直径最小。$N\le 150$ 。题解先用 $\text{Floyd}$ 跑最短路,然后可以算出从每个点出发的最远距离,然后枚举两个不连通的点连上即可得到答案。但有可能出现连接的两个点不是直径两端的情况,这时原来连通块的直径就是这个新连通块的直径,所以需要取最大值。#include<bits/std...
题解 图论-最短/最长路 图论
提高+/省选-
标签
其它-Firefox1 其它-pbds1 其它-pjax1 其它-Ubuntu1 其它-VSCode1 其它-网易云音乐1 动态规划52 动态规划-区间DP9 动态规划-单调队列优化DP5 动态规划-图上DP1 动态规划-斜率优化DP5 动态规划-树形DP16 动态规划-状压DP16 动态规划-线性DP10 动态规划-背包DP3 图论4 图论-LCA4 图论-Tarjan11 图论-二分图1 图论-割点3 图论-基环树1 图论-差分约束4 图论-强连通分量2 图论-最小环1 图论-最小生成树6 图论-最短/最长路19 图论-树上差分2 图论-树的直径4 图论-桥1 图论-缩点5 图论-负环4 字符串3 字符串-kmp2 思维题3 数学26 数学-bsgs2 数学-exgcd4 数学-gcd2 数学-中国剩余定理2 数学-卡特兰数1 数学-卢卡斯定理4 数学-快速幂4 数学-扩展中国剩余定理1 数学-扩展卢卡斯定理3 数学-矩阵5 数学-约数1 数学-组合数3 数学-质数1 数据结构-动态开点线段树1 数据结构-单调栈1 数据结构-单调队列2 数据结构-可持久化字典树2 数据结构-堆4 数据结构-字典树2 数据结构-并查集2 数据结构-栈1 数据结构-树状数组6 数据结构-树链剖分10 数据结构-线段树5 数据结构-队列1 比赛-Codeforces21 比赛-JX Round1 比赛-NOIp/CSP5 算法-KM算法1 算法-二分/三分12 算法-位运算1 算法-倍增4 算法-分块2 算法-分治3 算法-哈希2 算法-多叉树转二叉树2 算法-差分4 算法-悬线法1 算法-拓扑排序2 算法-排序3 算法-搜索21 算法-模拟5 算法-状态压缩4 算法-贪心10 算法-高精度3 问题-逆序对2 题目-一本通5 题目-网络流24题2