图论
文章平均质量分 94
图论类习题总结
Gene_INNOCENT
Wait for the sunrise!
展开
-
【14年浙江省赛 F ZOJ 3781】Paint the Grid Reloaded 【建图、bfs】
题意: 一个n*m的棋盘,棋盘中有两种颜色的棋子。每翻动一个棋子,则该棋子所在的同颜色的连通块中的棋子都会翻动,即从黑变白,或从白变黑。问最少需要多少步可以将所有棋子翻成同一颜色。 思路: 首先肯定是要将图中所有棋子的连通块处理出来。然后我们可以发现一个连通块只要翻动一次,则该连通块就会与旁边所有的连通块进行合并,成为一个整体。 因此我们考虑到将...原创 2019-02-27 10:59:41 · 135 阅读 · 0 评论 -
【2019 NWERC - D 】Disposable Switches【最短路、单调栈、数学思维】
题意nnn 个点,mmm 条边的有权无向图。每条边的花费定义为 lv+c\displaystyle\frac{l}{v}+cvl+c,其中 l,v,cl,v,cl,v,c 分别为路径长度、传输速度、固定开销。每次传输时会从图中找一条开销最小的路径,其中 v,cv,cv,c 为满足 v>0,c≥0v>0,c\geq 0v>0,c≥0 条件下的任意值,问是否存在一些点始终不会出现...原创 2020-04-06 10:26:14 · 668 阅读 · 3 评论 -
最短路应用 —— 解决某些计数、数论问题
1. Elevator (Gym-241680 E)题意: 一个高度为 hhh 的电梯,初始位置在第一层。电梯有四个按钮。向上移动 aaa 格向上移动 bbb 格向上移动 ccc 格返回第一层问 1~h1~h1~h 层中有多少层是可达的。(1≤h≤1018,1≤a,b,c≤100000)(1\leq h\leq 10^{18},1\leq a,b,c\leq 100000)(1≤h...原创 2019-09-04 13:29:37 · 1310 阅读 · 0 评论 -
【CF 706】(C.Hard problem) + (D.Vasiliy's Multiset) + (E.Working routine)【最短路、01字典树、十字链表模拟】
C. Hard problem题意:nnn个字符串,顺序固定,每个字符串可以进行一次反转,反转代价为cic_ici,现要求将所有字符串按照字典序排列,原有顺序不能改变,只能够进行反转,问最少需要多少代价可以让字符串按字典序排列。如果不能,输出−1-1−1。思路:对于每一个字符串建立两个点,一个是原状态sis_isi,一个是翻转状态si′s_i'si′。如果sis_isi...原创 2019-04-08 11:24:52 · 381 阅读 · 0 评论 -
【Gym - 101806X】Xtreme NP-hard Problem【2018 KAIST RUN Spring Contest】【NP-hard】【大搜索】
Description:Caution! This problem turned out to be NP-hard. But since there were no rules against writing an NP-hard problem, we decided to leave this problem here.There is a bidirectional graph c...原创 2018-09-03 17:29:13 · 541 阅读 · 0 评论 -
HDU1317 —— 最长路+判断正环
题意:有n个房间(n <= 100),每个房间有一个点权(第1号房间和第n号房间权值均为0),到达该房间时会自动获得该点权(权值可能为负,范围是-100~+100).给出一些有向边。有一个人,初始能量值为100,初始位置是第一号房间,要走到第n号房间,且路途中不得使身上能量值小于或等于0(必须大于0).能到达第n个房间就算赢,问是否能赢。解题思路: 先用Floyd判断图是否连通,能否从...原创 2018-05-22 22:36:43 · 422 阅读 · 0 评论 -
【Nowcoder - 5670 B Graph】2020 牛客暑期多校训练营(第五场)【最小异或生成树、Boruvka 思想】
题意给定一颗 nnn 个点的树,每条边的权重为 wiw_iwi。(2≤n≤105,0≤wi<230)(2\leq n\leq 10^5,0\leq w_i< 2^{30})(2≤n≤105,0≤wi<230)可以任意删除一些边或者增加一些边,但是在删增过程中必须保证图连通并且任意一个环的异或和为 000。在此基础上,求最小生成树。题目链接:linklinklink思路观察题目要求,删增过程中保证图连通且任意一个环的异或和为 000,所以其实 (u,v)(u,v)(u,v)原创 2020-08-07 10:42:42 · 348 阅读 · 0 评论 -
【Gym-102606 H】Heat Pipes【奇环染色、bfs 生成树】
题意给定一个 nnn 个点,mmm 条边的无向图,现要给图中每一个点赋予一个温度值,使其满足下述三个条件:每个点的温度在 [a,b][a,b][a,b] 范围内[a,b][a,b][a,b] 范围内的所有整数在原图中都至少有一个点对应任何两个直接相连的点温差等于 111(1≤n≤2000,0≤m≤50000,0≤a≤b≤n)(1\leq n\leq 2000, 0\leq m\leq 50000,0\leq a\leq b\leq n)(1≤n≤2000,0≤m≤50000,0≤a≤b≤n)原创 2020-08-06 09:46:18 · 1424 阅读 · 0 评论 -
全图中第K小路径/团问题(有向/无向)
问题概述:最近频繁遇见图上的第 kkk 小问题,比如无向图的第 kkk 小团、有向图上的第 kkk 小路径,无向图上的第 kkk 小最短路问题。然后这类方法的解决方法都比较相近,主要思考方向是先将边或单点加入堆中,然后每次弹出一个最小值,再用最小值去更新到一个新的状态,并将新状态加入到堆中,一直到计算到 kkk 次为止。主要思想就是这样,但是具体操作上,对于不同的问题,涉及到不同的处理方式,...原创 2019-08-24 15:46:27 · 2190 阅读 · 0 评论 -
【Gym-101908 L】Subway Lines【树上两条路径交】
题意:给出一棵 NNN 个点的树,QQQ 组询问,每次询问给出四个点,组成树上的两条路径,求两条路径上的交点个数。(5≤N≤105,1≤Q≤2∗104)(5\leq N\leq 10^5,1\leq Q\leq 2*10^4)(5≤N≤105,1≤Q≤2∗104)思路:比赛的时候看到这道题,想都没想就掏出链剖板子,区间加和区间和查询就过了。赛后发现有些人是 LCA\text{LCA}LC...原创 2019-08-07 20:57:26 · 2345 阅读 · 0 评论 -
斯坦纳树算法概述及习题
斯坦纳树概述一、适用问题一个图中,有若干个关键点,将这几个关键点连在一起的最小花费。直观的理解,就是带关键节点的最小生成树。当然不同的题会有不同的限制,比如关键节点必须是叶子节点,或者求一个斯坦纳森林(需要对斯坦纳树再进行一次状压)。二、DP思想在图上找一个树,应该如何定状态呢?还记得第一次遇到斯坦纳树问题时,状态定的五花八门,眼花缭乱的,怼了一整场也只是空耗时间。其实,斯坦纳树的状...原创 2019-08-13 21:28:53 · 2498 阅读 · 0 评论 -
【山东2019省赛J题 ZOJ 4122】Triangle City【最短路去边+欧拉路】
题意:给出一个三角形城市,结构如下图所示。给出每个三角形的aaa、bbb、ccc三个边权,求从(1,1)(1,1)(1,1)到(n,n)(n,n)(n,n)的最长路,要求每条边在最长路中最多出现一次。(2≤n≤300)(2\leq n\leq 300)(2≤n≤300)思路:观察一下这幅图,可以发现图中每一个点的度数均为偶数,因此我们可以联想到欧拉回路,但这题是求从(1,1)(1,1)(...原创 2019-05-15 10:13:38 · 1404 阅读 · 0 评论 -
【洛谷 P2731】骑马修栅栏【欧拉路与欧拉回路】
题意:给出mmm条边,求出一条欧拉路,起点任意,终点任意,每条边只经过一次。要求给出的欧拉路字典序最小。(1≤m≤1024,1≤n≤500)(1\leq m\leq 1024,1\leq n\leq 500)(1≤m≤1024,1≤n≤500)思路:先总结一下有向图、无向图求欧拉路与欧拉回路的性质。无向图:有且仅有两个点度数为奇数则有欧拉路,所有点度数均为偶数则有欧拉回路。有向图:所有...原创 2019-04-28 18:14:52 · 298 阅读 · 0 评论 -
【UFBA Practice Session for Brazilian ICPC Regionals - 2018】Carnival【强连通图求“关键边”】
题意:给出一个nnn个点,mmm条边的强连通图。定义“割边”为去掉这条边之后,图中有两个连通块。输出图中所有的"割边"。(2≤n≤2000,1≤m≤50000)(2\leq n\leq 2000, 1\leq m\leq 50000)(2≤n≤2000,1≤m≤50000)思路:比赛的时候没有思路,觉得判断起来很麻烦,赛后看了题解发现这题只需要暴力+小剪枝即可完成…先说算法,枚举任意两点...原创 2019-05-03 21:24:40 · 534 阅读 · 0 评论 -
【NCD 2019 B】Let me sleep【边双连通分量缩点、树的直径】
题意:一个图,nnn个点,mmm条边。现允许往图中增加一条边,问增加完这条边之后,图中最少还有多少条割边。(1≤N,M≤105)(1\leq N,M\leq 10^5)(1≤N,M≤105)思路:既然要求割边,很明显需要求边双连通分量进行缩点。由于图可能是不连通的,因此现在问题转化为了,给出一个森林,可以任意增加一条边,问加完这条边之后,图中的割边最少还有多少。首先如果在两个不连通的树之...原创 2019-04-15 16:00:10 · 1492 阅读 · 0 评论 -
【ZOJ 4097 & The 19th Zhejiang University Programming Contest H】Rescue the Princess【边双连通缩点+LCA】
题意:给出一个无向图,nnn个点,mmm条边,可能有重边与自环,也可能不连通。qqq 组询问,每组询问给出333个点,uuu、vvv、www,问是否存在两条路径不存在公共边,并且一条路径是v→uv\rightarrow uv→u,另一条路径是w→uw\rightarrow uw→u,存在输出YesYesYes,否则输出NoNoNo. (1≤n≤105,0≤m≤2∗105,1≤q≤105)(1\l...原创 2019-04-14 22:31:00 · 394 阅读 · 0 评论 -
【Gym-10167】Is-A,Has-A, Who Knowz-A【图的连通性】
题意: 图中有两种连通关系,一种是is关系,一种是has关系。然后询问你m个问题,每个问题是x y z,表示x和z的关系是y,问你这种描述是否正确。 解法: 在本题中需要搞清楚题意,题意不是很好懂。 基本上题意就是,如果A和B是is关系,那么从A到B的路径上都是is边。 如果A和B是has关系,那么A到B的路径上至少有...原创 2018-08-31 09:29:02 · 465 阅读 · 0 评论 -
HDU5961 —— 传递【竞赛图】【判断传递闭包】
题意: 给一个竞赛图,将图分成两部分,判断两部分的图是否符合传递闭包,a->b,b->c,则a->c 解法: 判定 —— P图 && Q图无环,P图 && ~Q图无环。 因为P图中必须无环,Q图中必须无环。 并且P中 点A可到达点B ,则点A和点B中间有一条边,因此如果不符合题意...原创 2018-08-24 10:20:58 · 383 阅读 · 0 评论 -
【Codeforces】【Gym - 101234I】Tree Game【分类枚举】
题意: 给定一颗树,每条边初始均为白色。任意选取两个叶子节点,要求这两个叶子节点之间的边全部为白色,然后将这两个叶子节点之间的边全部染成黑色。直到无法再染色时停止,输出最少操作的次数。 思路: 一开始看到这道题,以为是一个找规律或者贪心题,然后再加上全场没几个人过这道题,就放弃了,没有仔细想这道题。 赛后才知道这其实就是一个暴力枚举多种情况的题目,...原创 2018-09-01 10:17:37 · 395 阅读 · 0 评论 -
【ccpc网络赛】YJJ's Salesman【1010】【树状数组+离散化+dp】
题意: 一个正方形地图上给定N个点,从 (0,0) 开始走向 (1e9,1e9),地图中每个点都有一个权值,只有从 (x-1,y-1)到达 (x,y)这个点,(x,y)这个点的权值才能够获得。要求走到终点时所获得的权值最大。 思路: 将点的 y 值离散化到数组 a 上,再将所有点按照 x 进行排序,从第一列遍历到最后一列,对于第 i 列上的每一个点,求出 (1 ,...原创 2018-08-25 21:09:46 · 228 阅读 · 0 评论 -
【ccpc网络赛】Tree and Permutation【1009】【树上+组合数学】
题意: 给定一棵无向树,求出树上所有顶点的全排列。 如1 3 2 4 5 与 1 3 4 5 2,定义每种全排列的值为1->3+3->2+2->4+4->5的最短路径之和。 求出所有全排列的值。 思路: 对于这样一个问题,考虑到数据范围,如果设计一种针对每种全排列而进行的算法显然是不现实的,必须得从整张图进行考虑。...原创 2018-08-25 21:19:54 · 255 阅读 · 0 评论 -
【ACM-ICPC 2018 南京赛区网络预赛】Magical Girl Haze【分层图】
Description: There are NN cities in the country, and MM directional roads from uu to v(1\le u, v\le n)v(1≤u,v≤n). Every road has a distance c_ici. Haze is a Magical Girl that lives in City 11, sh...原创 2018-09-01 20:03:44 · 558 阅读 · 2 评论 -
【树上分块】【dfs序】2018沈阳网络赛 —— J题
题意: 给定一颗树,初始状态下树上所有节点的权值为0。两种操作,第一种操作,将深度为x的所有节点权值加k;第二种操作,统计一个节点下面所有子节点的权值之和。 思路: 本题可以直接进行分块操作。 先维护一个dfs序,因为dfs序上可以找到一个节点的所有子节点,然后分500块,每块大小为200,对每一块维护一个数组,表示在该分块下,深度为 i 的点有多...原创 2018-09-18 08:49:11 · 266 阅读 · 0 评论 -
【dfs+简单贪心】Leaf Sets【Codeforces Round #510 (Div. 2)】
题意: 给定一颗树,将所有的叶子节点放到多个集合中,每一个集合必须满足该集合内任意两点之间的距离小于k,问最少需要多少个这样的集合。 思路: 本题是将所有距离小于k的叶子节点放到一个集合中。 我们可以先从小的方面进行考虑,如果是一个顶点,连接着3个叶子顶点,那我们应该如何合并,不难发现我们需要将三个叶子节点的深度进行排序,然后从后往前进行合并。...原创 2018-09-18 09:30:49 · 167 阅读 · 0 评论 -
【树上问题】Tree Reconstruction【Codeforces Round #509 (Div. 2)】
E. Tree ReconstructionDecription: Monocarp has drawn a tree (an undirected connected acyclic graph) and then has given each vertex an index. All ...原创 2018-09-21 21:47:41 · 279 阅读 · 0 评论 -
【Gym-100085 K】Kingdom Roadmap【树上构造题】
题意: 给定一颗树,往树上加边形成一个新的图,新图需要满足去除图中任意一条边,新图仍然连通。要求输出最少需要添加几条边以及具体的添边方式。 思路: 比赛的时候是没什么思路的,还是太cai了。 看了题解之后发现,可以先对整个树进行一个dfs,求出每个叶子节点的dfs序。添边肯定是对叶子节点进行添边,因此需要求出所有叶子节点的dfs序。 ...原创 2019-02-16 13:56:11 · 289 阅读 · 0 评论 -
【14年浙江省赛 ZOJ 3780】Paint the Grid Again【图转换】
题意: 给一个XO的n*n网格图,X表示这个格子被染成了黑色,O表示这个格子被染成了白色。一开始格子都是无色的,你可以选择一行将其染黑,或者选择一列将其染白。注意,每一行、每一列均只能选择一次。问你是否有一种涂色方案可以将图染成题目中的样子,如果有,请输出字典序最小的涂色方案。否则输出No solution。 思路: 此题可以先考虑怎样的情况是无解的,由于每...原创 2019-02-18 00:27:09 · 165 阅读 · 0 评论 -
【2011-2012 ACM-ICPC Pacific Northwest Regional Contest】Collateral Cleanup【建图拓扑排序】
题意: 现在有一个矩形,矩形碎成了n块玻璃。每块玻璃都是一个三角形,现在给出每个三角形的三个顶点,问按什么样的顺序,将三角形从上往下依次放入矩形,可以构成原来的玻璃。 这里需要注意题意中明确说了三角形的每一条边最多只会有一个相邻三角形,比赛的时候没看到这句话,然后整道题毫无头绪,哭了...实则不难。思路: 然后我们来考虑如何写这题。稍...原创 2019-03-06 11:23:04 · 264 阅读 · 0 评论 -
【树上贪心】Tree with Small Distances【codeforces-Round #506-div3-E】
题意: 给定一颗n个顶点的双向连通树,现在要在这颗树上加边,使得这颗树的顶点 1 到达其他顶点的距离 <= 2,问最少需要加几条边。 思路: 看到这道题之后,很自然的能够想到贪心,但是贪心的对象是什么需要确定。 比赛的时候我的思路是对这个节点的度数进行贪心,但是可以发现这个思路显然不对,然后就回去继续想D题了,所以究竟用什么来贪心是个技术性问题。...原创 2018-08-26 12:17:31 · 812 阅读 · 0 评论