最短路
romiqi_new
这个作者很懒,什么都没留下…
展开
-
[CF715B][最短路][构造]Complete The Graph
CF715B考虑先把所有边填成1,这样不会影响最终答案,因为每条边都必须填一个正整数接下来只需要在此基础上增大边权即可我们先把填1的图做一遍dijkstra,然后再把原图做一遍dijkstra,第二次的时候如果遇到一条边(u,v)(u,v)(u,v)没有权值,那就把边权设为L−d2[u]−d1[v]L-d2[u]-d1[v]L−d2[u]−d1[v]...原创 2019-08-15 18:11:53 · 307 阅读 · 0 评论 -
[BZOJ5511][最短路]TJOI2019:大中锋的游乐场
BZOJ5511水题dijkstra加一维Code:#include<bits/stdc++.h>using namespace std;inline int read(){ int res=0,f=1;char ch=getchar(); while(!isdigit(ch)) {if(ch=='-') f=-f;ch=getchar();} wh...原创 2019-08-22 14:28:51 · 143 阅读 · 0 评论 -
[最短路][位运算优化建图]walk
无来源对于所有数据,n≤2e5,m≤3e5,1≤vali<220n≤2e5,m≤3e5,1≤val_i<2^{20}n≤2e5,m≤3e5,1≤vali<220位运算优化建图是我瞎取的名字考虑新建点来表示val,每个点向val连边权为1的边,每个val向对应点连边权为0的边然后重点是考虑val之间的连边:每个val向二进制位下1的个数比自己少一个的点连边权为0的边,这...原创 2019-09-17 22:08:43 · 151 阅读 · 0 评论 -
20190918CSP-S模拟题解
T1:一张n个点的无向图,求出经过每个点的最小环n≤300n\le300n≤300 m≤40000m\le40000m≤40000暴力是拆边然后跑dij,正解就是拆点可以枚举每个点,做一个最短路树,然后枚举非树边更新答案就过了。。。std是分治Floyd,就在每次分治的时候暴力向Floyd矩阵里插...原创 2019-09-19 08:17:25 · 595 阅读 · 0 评论 -
[BZOJ3199][半平面交][最短路]SDOI2013:逃考
BZOJ挂,链自找很容易发现两个点连线的中垂线就是划分两个点控制区域的直线那对于每个点处理处它与其他所有点的连线的中垂线,加上边界四条线做半平面交即可知道这个点的控制区域然后这个点与所有剩下的直线所代表的点连边,跑最短路即可Code:#include<bits/stdc++.h>#define eps 1e-9#define db double#define mp ma...原创 2019-09-29 21:56:57 · 112 阅读 · 0 评论