ACM-ICPC模板 一、线段树优化的$Dijkstra$ 优先队列版本已经烂大街了,这里就不贴了,而且在下面的分层图里有写 1.普通线段树 时间和内存均是优先队列优化版本的 \(\frac{1}{2}\) int n, m; struct edge { int to, w, nxt; edge() ...
分类:
其他好文 时间:
2020-06-20 21:08:35
阅读次数:
53
分层图最短路是指在可以进行分层图的图上解决最短路问题。分层图:可以理解为有多个平行的图。 图片来源 ####这个图的意思是第0层是原始的图,上面的1—k层都是第0层的映射。 层内(同一层),仍然是u->v的关系,权值为w. 层间(不同层),也是u->v的关系,但权值是0, 比如图中的$S_0$与$a ...
分类:
其他好文 时间:
2020-06-15 22:46:20
阅读次数:
58
思路 如果考虑暴力建图的方法 对于每一条线路的每一个站点可到达的站点建边 在每条线路有1e5个站点的条件下显然是不现实的 如何解决建图的问题是此题的关键 因为有转车和车费逐步增加的情况存在 很容易想到分层图的概念 通过把路线看作不同的图层 就能把转车的概念转化为层与层之间的转化概念 令图层层数为 0 ...
分类:
其他好文 时间:
2020-05-08 14:41:56
阅读次数:
70
LINK: "分层图" 很精辟的一道题 写的时候没带脑子 导致搞了半天不知道哪错了。 可以想到状压每次到某一层的状态 然后这个表示方案数 多开一维表示此时路径条数的奇偶即可。 不过显然我们只需要知道路径条数的奇偶性即可。 所以对于当前状态 如果某个点路径条数为偶数 那么怎么转移都不必要 所以我们可以 ...
分类:
其他好文 时间:
2020-05-04 21:39:25
阅读次数:
76
dinic 网络流算法 : 反悔边的意义:当一条流量被流入,反向流入的时候,就相当于没有流过。 分层图的意义:对于给定的点,流入< =dep[ u ] 是没有意义的,不会使得当前流更优。 当前弧优化:当前的边已经流光,不再流入。 炸点优化:当前点已经流光,设dep为-1,不再流入。 多路增广:如果一 ...
分类:
其他好文 时间:
2020-04-23 19:20:40
阅读次数:
63
题意描述 "[USACO09JAN]Laserphones S" 学过物理的同学都知道这种镜子是可以把光线旋转 90 度的。 那么显然就是要求添加镜子的最小个数。 貌似题目漏了一句就是题目保证有解的情况。 算法分析 其实可以联想到之前的 分层图最短路 。~~(不要问我为什么)~~ 建立4层相同的图。 ...
分类:
其他好文 时间:
2020-04-20 01:18:59
阅读次数:
58
题:https://acm.ecnu.edu.cn/contest/255/problem/A/ 题意:有m个人在点S,要全部走的点T,题目给定每条通道每天只能走的人数,问最少几天能完成。 分析:这和最大流的水流问题很相似,只不过最大流的水流是一直会占这某一通道的,而这里只是占用了单位时间; 我们考 ...
分类:
其他好文 时间:
2020-03-29 01:40:27
阅读次数:
147
题意:https://www.acwing.com/problem/content/342/ 在郊区有 N 座通信基站,P 条 双向 电缆,第 i 条电缆连接基站AiAi和BiBi。 特别地,1 号基站是通信公司的总站,N 号基站位于一座农场中。 现在,农场主希望对通信线路进行升级,其中升级第 i ...
分类:
其他好文 时间:
2020-03-16 15:00:07
阅读次数:
105
#include<bits/stdc++.h> #define MAXN 200005 using namespace std; int n,m,k,tot,beg,end; int h[MAXN*15],dis[MAXN*15]; bool vis[MAXN*15]; struct node{ i ...
分类:
其他好文 时间:
2020-02-11 19:17:27
阅读次数:
68
1.208 UOIP十合一 问你某张图有多少个边集中不存在环。 1.DAG 2.多个边数很少的连通块 3.多个连通块,且其中仅含有一个环 4.分层图,每一层仅有4个点 5.多个强连通分量,每个中的边数很少 6.完全图 7.8 n很小的有向图 1.DAG 除了重边之外的所有边的个数为$c$。 答案为: ...
分类:
其他好文 时间:
2020-02-07 21:03:40
阅读次数:
99