
图论
文章平均质量分 54
c_cl
这个作者很懒,什么都没留下…
展开
-
CF455C Civilization (并查集)
CF456ECodeforces Round #260 (Div. 1) CCodeforces Round #260 (Div. 2) Ehttp://codeforces.com/contest/455/problem/CC. Civilizationtime limit per test1 secondmemory limi转载 2017-08-19 11:07:01 · 602 阅读 · 0 评论 -
codeforces 718E. Matvey's Birthday
题目链接:http://codeforces.com/contest/718/problem/E题目大意:给定一个长度为n的只包含a~h的字符串s,对于1<=a,b<=n,,如果|a-b|=1或s[a]=s[b],就在a与b之间连一条无向边,求这个图的直径以及有多少对点的距离(这里指最短距离)等于这个直径。直径即一个图中距离最大的两个点之间的距离。数据范围:2<=n<=10...转载 2018-10-05 00:50:00 · 137 阅读 · 0 评论 -
【Codeforces Round 374 (Div 2)C】【DAG上的DP】
C. Journeytime limit per test3 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputRecently Irina arrived to one of the most famous cities of Berland — t...转载 2018-10-06 00:43:30 · 192 阅读 · 0 评论 -
Codeforces Round #375 (Div. 2) E One-Way Reform(欧拉路径
题目链接E. One-Way Reformtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputThere are n cities and m two-way roads in Berland, each r...转载 2018-10-09 00:44:44 · 127 阅读 · 0 评论 -
Codeforces Round #379 (Div. 2) E. Anton and Tree 缩点 直径
E. Anton and Tree题目连接:http://codeforces.com/contest/734/problem/EDescriptionAnton is growing a tree in his garden. In case you forgot, the tree is a connected acyclic undirected graph.The...转载 2018-10-26 23:40:40 · 126 阅读 · 0 评论 -
Codeforces-786B-Legacy (线段树+最短路)
看到区间很容易就能想到线段树。 对于操作2,我们可以建立一棵线段树,线段树的某一个结点表示区间 [l,r] ,那么在图中建立一个结点 u 表示区间 [l,r] ,新建点u 指向 l,l+1,l+2...r的边,权值为 0 。 当得到一个操作 (v,l,r,w) 时,查询一次线段树,把所有符合 [ql,qr]∈[l,r] 的极大区间结点建立一条被 v 指向的边,权值为 w 。这样就能表示 v指向...原创 2018-11-23 19:03:22 · 245 阅读 · 0 评论 -
codeforces 804B——Ice cream coloring(图论,dfs,数据结构,好题)
C. Ice cream coloringtime limit per test 2 secondsmemory limit per test 256 megabytesIsart and Modsart were trying to solve an interesting problem when suddenly Kasra arrived. Breathless, he asked:...转载 2018-11-28 22:36:29 · 189 阅读 · 0 评论 -
codeforces 832D Misha, Grisha and Underground 最近公共祖先LCA
InputThe first line contains two integers n and q (2 ≤ n ≤ 105, 1 ≤ q ≤ 105) — the number of stations and the number of days.The second line contains n - 1 integers p2, p3, ..., pn (1 ≤ pi ≤ n). Th...原创 2018-12-19 22:50:59 · 126 阅读 · 0 评论 -
Codeforces Round #442(Div.2)Problem D Olya and Energy Drinks(BFS)
D. Olya and Energy Drinkstime limit per test 2 secondsmemory limit per test 256 megabytesinput standard inputoutput standard outputOlya loves energy drinks. She loves them so much that her room i...转载 2019-02-01 20:26:23 · 181 阅读 · 0 评论 -
Codeforces 892E - Envy 【最小生成树】
E. EnvyFor a connected undirected weighted graph G, MST (minimumspanning tree) is a subgraph of G that contains all of G's vertices, isa tree, and sum of its edges is minimum possible.You are give...转载 2019-02-22 19:53:58 · 283 阅读 · 0 评论 -
【Codeforces】894E.Ralph and Mushrooms Tarjan缩点+DP
给定n个点m条边有向图及边权w,第i次经过一条边边权为w−1−2.−..−i,w≥0给定起点s问从起点出发最多能够得到权和,某条边可重复经过有向图能够重复经过的边当且仅当成环,所以tarjan缩点成DAG,缩点后每个点内的权值可以通过算出,假设最大的n使得w−n(n+1)2≥0,那么该点值为(n+1)w−n(n+1)(n+2)/6,通过对DAG进行dp算出最长路就是答案#include ...转载 2019-02-24 11:37:10 · 135 阅读 · 0 评论 -
Codeforeces - 903E. Bipartite Segments - dfs、二分图
E. Bipartite Segments分类: data structures dfs and similar题意: 给你一个无向图,n(1≤n≤3×105) 个点,保证没有偶数环,有 q(1≤q≤3×105) 次询问,每次给出 lr, 问只保留编号 [l,r] 区间的点的边,有多少个区间内点和它们的边构成的图是二分图?解题思路: 判断一个无向图是否是二分图的重要性质就是——没有奇数...转载 2019-03-05 09:24:37 · 177 阅读 · 0 评论 -
cf909e E. Coprocessor
两个队列的拓扑排序#include <iostream>#include <cstdio>#include <cmath>#include <vector>#include <algorithm>#include <cstring>#include <string>#include &l原创 2019-03-06 21:23:11 · 360 阅读 · 0 评论 -
【CodeForces】914 E. Palindromes in a Tree 点分治
【题目】E. Palindromes in a Tree【题意】给定一棵树,每个点都有一个a~t的字符,一条路径回文定义为路径上的字符存在一个排列构成回文串,求经过每个点的回文路径数。n<=2*10^5。【算法】点分治【题解】状压20位的二进制表示一条路径的字符状态,点分治过程中维护扫描过的路径只须维护状态桶数组,t[i]表示前面状态为i的路径条数。合并:考虑当前状态为j,要...转载 2019-03-12 21:37:54 · 118 阅读 · 0 评论 -
Codeforces-949C:Data Center Maintenance(Tarjan强联通分量)
C. Data Center Maintenancetime limit per test1 secondmemory limit per test512 megabytesinputstandard inputoutputstandard outputBigData Inc. is a corporation that hasndata centers indexed fr...转载 2019-04-14 11:11:11 · 222 阅读 · 0 评论 -
Codeforces Round #496 (Div. 3) F. Berland and the Shortest Paths[思维+图论]
题意:一张图有n个顶点,m条边,现在要求选择n-1条边,输出<=k个方案.每个方案满足:顶点1到任何1个顶点的距离 总和 最小.思路:每个顶点(除了1),有选择1条边的机会.先bfs求出1到所有顶点的最短距离,假如 dis[u]==dis[v]+1 其中v为相邻顶点,则选这条边,能够最小化答案.那么对于u来说,选择(u,v1) (u,v2) (u,v3)同样能最小化答案.假如问答案有...原创 2019-05-05 17:02:51 · 113 阅读 · 0 评论 -
[Codeforces 1037E. Trips]
题目大意:有n个人,m天,每天晚上都会有一次聚会,一个人会参加一场聚会当且仅当聚会里有至少k个人是他的朋友。每天早上都会有一对人成为好朋友,问每天晚上最多能有多少人参加聚会。朋友关系不满足传递性。 相当于有n个点,进行m次加边操作,每次操作后附加一个询问,问最大点集的大小,使得点集中每个点的度数均大于等于k题解:如果直接边加边询问可能比较麻烦,本着“正难则反”的原则,我们可以将题...转载 2019-06-01 17:17:55 · 187 阅读 · 0 评论 -
[ CodeForces 1063 B ] Labyrinth 优先队列
给出一个四联通的N×M网格图和起点。图中有一些位置是障碍物。现在上下移动步数不限,向左至多走a步,向右至多走b步,求从起点出发能到达多少个空地。优先cur.l+cur.r小的,因为差值恒定#include <iostream>#include <cstdio>#include <algorithm>#include <cstri...原创 2019-06-17 21:28:26 · 215 阅读 · 0 评论 -
Codeforces Round #375 (Div. 2) F. st-Spanning Tree
传送门:Codeforces Round #375 (Div. 2) F. st-Spanning Tree题意: 给你n个点,m条边,有两个给定的点S,T以及它们在生成树中最大的度数 求能否构造出一棵树,使得这两个点的度数满足要求思路: 求出不使用与S,T有关的边构成的联通块 这些联通块与S,T有三种联通情况 1.只与S相连 2.只与T相连 3.与S和T均相连 记录一下已...转载 2018-10-12 00:22:10 · 142 阅读 · 0 评论 -
Codeforces700C Break Up(搜索+tarjan)
http://codeforces.com/problemset/problem/700/C 题意:n个点m条边,从s到t,让你删掉最多两条边,让s和t不通,让花费最小。 题解:先找一条路出来,因为有路,所以为了不通,肯定要删除上面一条边,所以就是n的枚举删边,删边之后呢,如何找删第二条边,那么肯定要再搜一次看能不能找到一条路径咯,这是m的复杂度,如果没找到,就是删一条,如果找到了,怎么办,总...转载 2018-09-04 00:33:10 · 217 阅读 · 0 评论 -
Codeforces 700B Connecting Universities(DFS)
题意有一颗数,树的边权为1,树上的有些节点有大学,现在要把这些大学配对,每对大学之间都要链接线缆,问最多要链接多长的线缆。图示 以第一组样例为例: 思路直接dfs去计数每个节点的子节点包含有多少个大学,这样就可以算出每条边的两边有多少大学。 在每条边上能建立的最多的线缆数就是:两端点的子树中包含的大学数量中,较小的那一个。即是说包含较少的大学的端点的子树中的大学都和另外一边的大...转载 2018-09-02 22:32:00 · 200 阅读 · 0 评论 -
HDU 6071 Lazy Running
题意: 给你一个由四个节点组成的环,求从节点2出发,回到节点2的不小于k的最短路。思路:取w=\min(d_{1,2},d_{2,3})w=min(d1,2,d2,3),那么对于每一种方案,均可以通过往返跑ww这条边使得距离增加2w2w。也就是说,如果存在距离为kk的方案,那么必然存在距离为k+2wk+2w的方案。设dis_{i,j}disi,j转载 2017-08-04 23:30:13 · 211 阅读 · 0 评论 -
hdu4975 A simple Gaussian elimination problem.正确解法 最大流+删边判环
题意:有n行m列矩阵,给出各行的和、各列的和,矩阵元素需要为0~9,判断无解、唯一解、多解。题解:网络流+判环。和hdu4888几乎一模一样,hdu4888题解链接:http://www.cnblogs.com/yuiffy/p/3891639.html这题的做法就是hdu4888的做法,点上面的链接怒看如何建图,我下面说这题的不同之处。可以想到,如果选择一转载 2017-09-04 16:48:14 · 178 阅读 · 0 评论 -
HDU 4971 A simple brute force problem.(最小割,最大权闭合图)
题意:给出n个项目,m个问题,完成某个项目需要解决一些问题,解决某个问题可能要先解决另一个问题,比如问题i依赖于问题j,那要先解决j再解决i,如果互相依赖,则要同时解决。完成某个项目会获得收益,解决某个问题需要一些花费,求最大净收益。分析:就是个最大权闭合图,幸好以前做过一道,并且还记得建图的方法,于是在刚过的网络流的代码上改了两下就AC了。建图方法:项目是正权点,转载 2017-09-04 22:51:23 · 180 阅读 · 0 评论 -
codeforces 498C C. Array and Operations(最大流+数论)
题目链接:codeforces 498C题目大意:给出一组数,然后给出他们之间的边,构成一张由奇数点和偶数点组成的二分图,然后存在边的数可以除以他们的公约数,问最多的操作次数。题目分析:为了得到了最多的操作次数,每次操作一定是除以两个数的公共的质因数。所以我们对于每一个质因数建图,原图中的边的两个点都存在这个这个质因数的连边,边权为两个点这个质因数的转载 2017-09-14 22:57:36 · 370 阅读 · 0 评论 -
Codeforces Round #286 div.2 D 505D. Mr. Kitayuta's Technology【强连通分量,弱联通分量】
题目链接:http://codeforces.com/contest/505/problem/D题目大意:在一个图中,有n个顶点,给出m对数字(u,v)表示顶点u和顶点v必须直接或者间接相连,让你构造一个这样的图,输出最少需要多少条边。分析:毫无疑问,n个顶点的话,我们最多可以用n条边,使得n个顶点构成一个环,满足所有的情况(任意两点都是联通的),但是这并不一定是最转载 2017-09-15 16:25:50 · 212 阅读 · 0 评论 -
Codeforces Round #288 (Div. 2)---D. Tanya and Password
D. Tanya and Passwordtime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputWhile dad was at work, a little girl Tanya de转载 2017-09-16 21:54:51 · 216 阅读 · 0 评论 -
Codeforces 512C Fox And Dinner 奇偶建图 网络流
题目链接:点击打开链接题意:给定n个人和其权值。让人坐到任意多张圆形的桌子上使得任意两个相邻的人权值和为素数,且一张桌子至少3个人输出桌子数和每张桌子坐的人(输出任意一个具体方案)思路: 首先人的权值都是>=2的,也是就说组合成的素数一定是奇数奇数 = 奇数+偶数。所以桌子上的人一定是奇偶交错的,而且一张桌子人数是偶数个(即n必须为偶数,一半转载 2017-09-18 19:34:41 · 378 阅读 · 0 评论 -
Codeforces Round #292 (Div. 2) -- D. Drazil and Tiles (拓扑排序)
D. Drazil and Tilestime limit per test 2 secondsmemory limit per test 256 megabytesinput standard inputoutput standard outputDrazil created a following problem转载 2017-09-19 21:06:51 · 253 阅读 · 0 评论 -
cf472D Design Tutorial: Inverse the Problem
题意是给你一个dist[i][j]的邻接矩阵,判断这是不是一棵树。想法是先假设这就是棵树,用最小生成树直接算出应有的n-1条边,然后暴力求出在只有这n-1条边的情况下的dist和原数组比较当然前面还要预处理排除一堆不合法答案hzwer:为什么要做最小生成树呢?因为首先距离当前点x最近的点y肯定是有边直接连接的,因为(反证法)假设有z使得xz和yz分别连接,则dis[x][z转载 2017-09-03 11:58:41 · 338 阅读 · 0 评论 -
判断点在任意多边形(包括凹凸边形)内
原文链接:点击打开链接题目地址:http://www.cnblogs.com/try86/archive/2012/04/22/2465416.html这一题,若点在边上,也将点看做成多边形内。对于凸多边形有很多种方法判断点在多边形内,但若是凹多边形,则靠谱的方法不多,可以谷歌一下。1)水平/垂直交叉点数判别法(适用于任意多边形包括凹凸边形)注意到如果从P作转载 2017-10-07 12:59:01 · 2622 阅读 · 0 评论 -
hdu5294 Tricks Device 最短路+最小割
Tricks DeviceTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 66 Accepted Submission(s): 14Problem DescriptionInnocent Wu foll转载 2017-09-21 20:57:41 · 282 阅读 · 0 评论 -
Codeforces Round #302 (Div. 2) D - Destroying Roads 图论,最短路
题目连接http://codeforces.com/contest/544/problem/DDescriptionIn some country there are exactly n cities and m bidirectional roads connecting the cities. Cities are numbered with integers from 1转载 2017-10-03 10:56:30 · 164 阅读 · 0 评论 -
Codeforces Round #311 (Div. 2) D. Vitaly and Cycle 图论 二分图
D. Vitaly and Cycle time limit per test1 second memory limit per test256 megabytes inputstandard input outputstandard output After Vitaly was expelled from the university, he became interest转载 2017-10-10 21:21:38 · 205 阅读 · 0 评论 -
Codeforces E. President and Roads (优先队列Dijkstar + 强连通 找必最短路上的必须边(桥))
E. President and Roadstime limit per test 2 secondsmemory limit per test 256 megabytesinput standard inputoutput standard outputBerland has n cities, the capita转载 2017-10-14 11:06:52 · 426 阅读 · 0 评论 -
codeforces 546E. Soldier and Traveling 网络流
yohahacodeforces 546E. Soldier and Traveling 网络流题目链接给出n个城市, 以及初始时每个城市的人数以及目标人数。初始时有些城市是相连的。 每个城市的人只可以待在自己的城市或走到与他相邻的城市, 相邻, 相当于只能走一条路。如果目标状态不可达, 输出no, 否则输出每个城市的人都是怎么走的, 比如第一个城市转载 2017-10-03 21:03:47 · 235 阅读 · 0 评论 -
【Codeforces613D】Kingdom and its Cities【虚树】【Tree DP】倍增lca
http://codeforces.com/problemset/problem/613/D题意:给出n个点的树,有q个询问,每次询问给出k个重要的点,问至少删掉多少个非重要的点,使得这个重要的点都不连通。 首先对于一个询问,无解的情况肯定是有两个相邻的重要点,直接特判就行。对于其他情况,进行一次tree dp。如果当前点为非重要点,且它转载 2018-01-27 18:51:54 · 282 阅读 · 0 评论 -
codeforces 645D D. Robot Rapping Results Report(拓扑排序+拓扑序记录)
D. Robot Rapping Results Reporttime limit per test2 secondsmemory limit per test256 megabytesinputstandard inputoutputstandard outputWhile Farmer John rebuilds his farm转载 2018-04-07 20:16:26 · 177 阅读 · 0 评论 -
Cf1152 欧拉回路
https://blog.youkuaiyun.com/qq_37555704/article/details/83347641无向图建双向边但只能用一个,nxt数组优化当前节点考虑的边号防止反复从头枚举,离散化数组要开大,可能有2*n的-1样例坑#include <iostream>#include <cstdio>#include <algorithm>...原创 2019-08-07 22:04:45 · 188 阅读 · 0 评论