![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
---------Graph Theory---------
Iking123
这个作者很懒,什么都没留下…
展开
-
【JZOJ4004】【GDKOI2015】青蛙跳环(欧拉回路)
Problem 有一个N(≤10000)颗石子围成的环,石子从0到N-1编号。从第i颗石子可以到第(i*2)%N颗石子和第(i*2+1)%N颗石子。求一条从0开始、最后回到0的、字典序最大的哈密顿回路。无解输出-1。Solution 首先考虑无解的情况。(通过打表发现)我们猜测N为奇数时会无解。其实证明也很简单: 能到达点0的只有⌊N2⌋⌊N2⌋⌊\frac{N}{2}⌋...原创 2018-03-17 07:48:53 · 1090 阅读 · 0 评论 -
【JZOJ5840】【省选模拟2018.8.22】Miner(思维+欧拉回路)
Problem 给定一张n(≤105)n(≤105)n(≤10^5)个点、m(≤105)m(≤105)m(≤10^5)条边的无向图(可能存在自环和重边,图可能不连通)。小C可任选起点开始,进行以下操作的一个:0 v,选择一条相邻的还未经过的边走到v1 v,传送到点v小C要走一个欧拉路径。求最小传送次数,并给出一种方案。Solution先考虑如何求答案(最少添加多少条边...原创 2018-08-22 20:02:26 · 213 阅读 · 0 评论 -
【JZOJ5798】【2018提高组】模拟A组 树 (并查集+LCA)
Problem我们有一颗从1到n编号的n(<=300000)个结点的树,此外,您将从树中获得M(<=300000)个节点对,形式为(a1,b1),(a2,b2),…(am,bm). 我们需要给每一条边定向,使得每一对节点对存在一条从ai到bi或从bi到ai的路径。 现在要求方案数,对10^9+7取mod即可。Solution刚看这道题,感觉很神仙。仔细分析,对于...原创 2018-08-12 20:16:02 · 646 阅读 · 0 评论 -
【NOI2018day1】归程(最短路+kruskal重构树+并查集+倍增)
Problem 给定一个n(≤2∗105)n(≤2∗105)n(≤2*10^5)个节点、m(≤4∗105)m(≤4∗105)m(≤4*10^5)条边的无向连通图,用l(≤104)l(≤104)l(≤10^4),a(≤109)a(≤109)a(≤10^9)描述一条边的长度、海拔。 给定Q(≤4∗105)Q(≤4∗105)Q(≤4*10^5)天,每天给出出发节点v和水位线p。所有海拔**不...原创 2018-08-05 21:07:45 · 539 阅读 · 0 评论 -
【JZOJ3387】【NOIP2013模拟】【NEERC2009(POJ3872)】终极武器(区间问题+二分+完全图)
Problem 给定N(≤10000)段闭区间[ai,bi],满足1<=b[i-1]<ai<=bi<=10^18。对于两个数字p和q,如果对于这N个区间内的任意一个整数num,把它在十进制表示下的后k(≤19)位中某一位上的p换成q(或者q换成p),都满足得到的整数仍然在这N个波段内,数字p和q是k等价的。我们称两两之间k等价的数字组成一个k等价类。 求1~9这9个数...原创 2018-07-14 15:52:52 · 738 阅读 · 1 评论 -
Codeforces Round #469(Div.1 C) (Div. 2 E)Data Center Maintenance(tarjan缩点)
Problem 给你n个数据中心,m个客户,并告诉你一天的小时数h(2 ≤ n ≤ 100 000, 1 ≤ m ≤ 100 000, 2 ≤ h ≤ 100 000)。 对于数据中心j,它在ujuju_j这个小时内会进行为期1小时的维修。 对于客户i,他的数据存储在ci,1ci,1c_{i,1}和ci,2ci,2c_{i,2}这两个数据中心里。你不能使这两个中心同时维修,也就是...原创 2018-07-05 15:58:41 · 163 阅读 · 0 评论 -
【JZOJ4261】【NOIP2015模拟10.22】最小代价(最短路图+最小生成树 or 贪心)
Problem 给出一幅由n(≤100000)个点m(≤200000)条边构成的无向带权图。(权值z满足1≤z≤1000000000) 其中有些点是黑点,其他点是白点。 现在每个白点都要与他距离最近的黑点通过最短路连接(如果有很多个黑点,可以选取其中任意一个),我们想要使得花费的代价最小。请问这个最小代价是多少? 注意:最后选出的边保证每个白点到离它最近的黑点的距离仍然等于...原创 2018-07-11 21:58:17 · 646 阅读 · 0 评论 -
【JZOJ4644】【NOI2016模拟7.16】人生的经验 (hashing+欧拉回路)
Problem 定义人生经验为长度为l,字符集大小为c的所有字符串,求一个最短的包含所有人生经验的字符串。HintSolution 这道题教会我们要善于猜结论熟练掌握欧拉回路。(其实我比赛时猜到是欧拉回路了,只不过忘了欧拉回路怎么破)不太懂欧拉回路的可以考虑戳一戳这里。 首先来算一下答案长度。 char的大小为1bytes,10MB=10485760...原创 2018-07-04 21:56:02 · 614 阅读 · 0 评论 -
欧拉路径(Euler path)/欧拉回路(Euler circuit)/欧拉图(Euler Graph)小结
前言 想象一下你碰到了哈密顿回路类的问题(NPC问题),但又要在可观的多项式时间内解出。这时,应该怎么破? 欧拉回路(P问题)闪亮登场!!!它只需你巧妙地重新建一下模,就可以O(n+m)O(n+m)O(n+m)(n为点数,m为边数)从容解决!定义 欧拉路:通过图中所有边的简单路。(换句话说,每条边都通过且仅通过一次) 欧拉回路:闭合的欧拉路。(即一个环,保证每条边都通过...原创 2018-07-03 22:29:34 · 21856 阅读 · 1 评论 -
【JZOJ3325】【BJOI2013 load】压力(广义圆方树+LCA+树上差分)
Problem 给定一个N(≤100000)个点、M(≤200000)条边的连通图,以及Q(≤200000)个点对(u,v)。求删除每个点后分别会有多少个点对不连通。Solution考虑求出每个点对(u,v)的(搜索树)路径中,会造成影响的点。这看似就是u到v路径上的割点,实则不是。例如下图: 个中4到2有一条返祖边。设有个点对为(2,5),该路径上的点3为割点。因为删除点...原创 2018-07-10 08:03:15 · 589 阅读 · 0 评论 -
【JZOJ1418】【COCI2007】追捕盗贼(双联通分量)
Problem 给出一个N(2<=N<=100000)个点的联通图,有E(1<=E<=500000)条双向边,Q(1<=Q<=300000)个询问,每个询问有两种: 如果G1和G2间的边被删掉,A与B是否联通(保证A和B不同,G1和G2之间一定存在路);如果点C被删掉,A与B是否联通(A、B、C互不相同)。Solution 这道题我刚看...原创 2018-06-11 20:19:27 · 584 阅读 · 0 评论 -
【JZOJ5705】【GDSOI2018 day3】谁是冠军(champion)(主席树+tarjan)
ProblemInputOutputHintSolution60points:暴力 or tarjan 首先,考虑转换模型。对于两个人x,y,如果x能胜y,则从x向y连一条边;反之则反。那么原题就转化为了给出一个竞赛图,求能够遍历到所有点的点。 可以枚举每个点x,从x开始遍历,判断能否可以遍历到所有点。这样暴力的复杂度为O(n2)O(n2...原创 2018-05-18 19:08:58 · 485 阅读 · 4 评论 -
【JZOJ3663】【SHTSC2014】神奇化合物(compound) (最小生成树+并查集)
ProblemInputOutput 对于每个Q操作,输出一行个整数为相应时刻的分子。HintSolution 一眼看过去,不就是弦图吗没思路。再看一下数据范围,顿时感觉有点希望。 由于我不会弦图,所以我在这里提供一种题目不需保证给出的图是弦图也能过的方法。 首先,考虑对于联通块a和b来说,若有x,y两边将它们连接,且x比y早报销...原创 2018-02-01 18:37:34 · 249 阅读 · 0 评论 -
【JZOJ5803】【2018.8.12省选模拟】girls(容斥+乱搞+三元环计数)
Description给定n个点,m对冲突(如点x与点y有冲突)。要求选不冲突的三个点i、j、k。三元组(i,j,k)(i,j,k)(i,j,k)贡献为A∗i+B∗j+C∗kA*i+B*j+C*kA∗i+B∗j+C∗k。求总贡献。n,m≤2∗105n,m≤2*10^5n,m≤2∗105。Solution正难则反,考虑容斥。记fif_ifi表示至少存在i对冲突的总贡献,则Ans...原创 2018-11-03 17:51:36 · 260 阅读 · 0 评论