![](https://img-blog.csdnimg.cn/20190918140053667.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
图论-杂类
文章平均质量分 59
图论-杂类
ZSJZ_liuzian
这个作者很懒,什么都没留下…
展开
-
JZOJ 6979. 【2021.02.03冬令营模拟】天各一方(DP)
JZOJ 6979. 【2021.02.03冬令营模拟】天各一方题目大意求nnn个点组成的所有不同连通图中,111到nnn的最短距离之和。n≤400n\le400n≤400题解很关键的一点是,因为是所有连边的方案,所以111到nnn和111到222、111到333……111到n−1n-1n−1本质上都是相同的,所以答案可以转化为111到剩下每个点的最短距离之和再除以n−1n-1n−1。试着把所有的点分层,距离即为它们层数的差值。初始时均在第000层,通过DP使除了111以外所有点下移原创 2021-02-04 09:27:40 · 210 阅读 · 1 评论 -
NOIP 2020 T1 排水系统(拓扑排序)
NOIP 2020 T1 排水系统题解很显然是拓扑排序,按题意直接模拟复杂度仅仅是O(n)O(n)O(n)的。但是涉及到分数的加法,通分会爆变量范围吗?一开始以为最大只是511∗105^{11}*10511∗10,连int都不会爆,保险起见还是开了long long。这样其实是错误的,不能只考虑一条链上,三条深度为111111的链,在最后的位置合并,分母最大可以到(3∗4∗5)11=6011≈265(3*4*5)^{11}=60^{11}≈2^{65}(3∗4∗5)11=6011≈265,lon原创 2020-12-15 19:36:58 · 925 阅读 · 0 评论 -
JZOJ 6897. 【2020.11.27提高组模拟】第一题(最短路)
JZOJ 6897. 【2020.11.27提高组模拟】第一题题解这是一个并不确定复杂度是否正确的解法。看到从若干点出发然后询问多次是否感染,让我想到了从所有初始被感染的点一起跑最短路,最后再处理询问,若询问的时间大于等于被感染的时间则为YES,否则为NO。每一次444操作则对应时间+1+1+1。但是要考虑封城的问题,把每个点封城的若干段时间区间存下来依次按编号、时间排序,注意最后可能有城市直到操作结束都没解封也要算上。在最短路中转移的时候,设当前从xxx转移到yyy,则通过二分找到在disxdi原创 2021-01-07 20:12:05 · 115 阅读 · 0 评论 -
2020 CSP-S T3 函数调用(拓扑序+后缀积)
2020 CSP-S T3 函数调用题解如果这题按部就班的做,哪怕用高级数据结构也不一定好维护,突破口在于要先转化计算的过程。每个位置的初值乘上所有操作中乘上的数即为它们分别的贡献,每个操作中加上的数乘上所有在它后面执行的操作中乘上的数即为它们分别的贡献,或者可以把赋初值看做是一种加操作,那么以上只有一种情况。归纳一下,现在我们需要求的是每个加操作之后所有乘操作的乘积,这就是它对答案的贡献,要注意的是,若干次的加操作尽管可能操作编号相同,但它们对应的乘积不同,即每个加操作的ViV_iVi的贡献原创 2020-11-15 08:56:52 · 485 阅读 · 0 评论 -
欧拉图论定理 公式及证明
欧拉图论定理定理内容若一个平面连通图GGG有VVV个顶点,EEE条边,FFF个面(包括整个图之外的面),则V−E+F=2V-E+F=2V−E+F=2。证明不妨尝试用归纳法。只有一个点,即V=1,E=0,F=1V=1,E=0,F=1V=1,E=0,F=1,满足V−E+F=2V-E+F=2V−E+F=2;加入一条边,连接上一个新点和一个原有的点,即(V+1)−(E+1)+(F+1)=V−E+F=2(V+1)-(E+1)+(F+1)=V-E+F=2(V+1)−(E+1)+(F+1)=V−E+F=原创 2020-11-14 22:22:08 · 4331 阅读 · 0 评论 -
prufer序列入门
prufer序列入门引入如何为有标号无根树判重?这里可以用到prufer序列——初始prufer序列是与无根树对应的序列。每一棵无根树(点数n≥2n≥2n≥2)都可以得到与其唯一对应的序列,且序列长度为n−2n-2n−2,通过特定的方式,可以将无根树转为prufer序列,也可以通过prufer序列和确定的点集,还原一棵无根树。操作一、无根树转prufer序列每次选取当前度数为111且编号最小的点(以保证序列唯一性),将与其相连的点(只有一个)的编号加入prufer序列中,并将原创 2020-07-27 22:03:18 · 314 阅读 · 0 评论 -
图的储存 各种方式的优缺点
图的储存图,通俗地说是由边和点组成的,一条边连接两个点,边会有权值(点也会有,直接用数组储存即可,不做讨论)。 设有nnn个点,mmm条边。方式1.邻接矩阵设f[i][j]f[i][j]f[i][j]表示从iii到jjj的边的权值。 按题目要求,当iii到jjj有多条边时,选取贡献最大的一条。 空间复杂度:O(n2)O(n2)O(n^2)。 优点:实现简单,使用方便。 缺点:...原创 2018-08-16 22:26:37 · 1361 阅读 · 0 评论