图论
JokerJim
这个作者很懒,什么都没留下…
展开
-
【tarjan强连通分量】洛谷P1726 上白泽慧音
【tarjan强连通分量】洛谷P1726 上白泽慧音题目传送门妥妥的强连通模板啊(详细解释戳这里)#include <bits/stdc++.h>#define MAXN 5005#define MAXM 50005*2using namespace std;int n, m, cnt;int head[MAXN], Next[MAXM], vet[MAXM]...原创 2018-10-11 16:49:41 · 270 阅读 · 0 评论 -
Loj10103「一本通 3.6 练习 4」电力
Loj10103「一本通 3.6 练习 4」电力题目传送门题意 求一个图删除一个点之后,联通块最多有多少。思路 很显然对于在有割点的情况下,要删除割点,而删除割点后增加的连通块个数可以这样计算: 设num[i]表示第i个点被删除后增加的连通块个数。当前点x为搜索树的根,且孩子的数量大于1,那么删除后连通块的增加量为孩子的数量-1(因为本身就是一个大连通块)。当前点x不是树根...原创 2019-02-11 21:34:45 · 477 阅读 · 0 评论 -
【题解】试题库问题
题意:原题传送门思路按照最大流的日常套路,我们来考虑如何建图。显然我们把题的类型和每套试题分别作为图中的点。用编号为1~n的点表示n套试题,编号为n+1~n+k的点表示k种类型。由于每套试题贡献为1,那么我们就从试题向它所属的所有类型连权值为1的边,从源点向试题连权值为1的边。然后,因为每种试题需要给定的viv_ivi个,那么我们就从每种类型向汇点连权值为viv_ivi的边,然...原创 2019-03-25 14:43:14 · 569 阅读 · 0 评论 -
【题解】CF878C Tournament
思路 又是一道建模思维题。我们考虑两个选手之间的关系,如果一个选手能在某一项运动中战胜对手,那么就从他自身向对手连一条有向边。这样显然会出现很多环,于是可以大力缩点,将整张图缩成一个DAG(实际实现中会变为一条链)。那么显然入度为零的环中包含的点数即为最后可能成为冠军的人数。实现细节 由于题目要求动态插入点,那么tarjan就不再适合了~~(虽然我并不清楚有没有大...原创 2019-03-18 21:10:46 · 661 阅读 · 0 评论 -
【题解】P3119 [USACO15JAN] Grass Cownoisseur
题意传送门题意很简单,给定一张有向图,允许选择在一条边上反向行走一次,求从1出发,且最终回到1,最多能遍历到的点数。Solution一道综合性的图论好题。首先想到,对于一个强连通分量内的点,都可以互相到达,直接缩成一个点,使原图变为DAG,并给每个强连通分量赋一个权值,为这个强联通分量内的点数。然后对于一张DAG,考虑实现反向行走一次的条件。这时我们又发现,反向行走一次后,并不改变图的...原创 2019-04-03 18:34:35 · 419 阅读 · 0 评论 -
【题解】CF875C National Property
题意给定一些字符串,其中字母用数字表示,并且初始是小写的。你可以把一些小写字母改成大写,但同时你要把所有同种字母全部改成大写。问是否能经过一些操作使得最终的字符串序列满足按字典序升序排列。如果能,则需要输出方案。题解可以发现每种字母只有两种状态:大写或者小写。并且状态受到相邻字符串的大小约束,于是我们可以朝2-SAT的方向思考~~(其实要不是这是我们2-SAT作业题,还真想不到)~~。我们...原创 2019-04-22 15:57:46 · 674 阅读 · 0 评论 -
【题解】方格取数&&骑士共存问题(二分图最大独立集)
方格取数问题传送门骑士共存问题传送门分析之所以把这两题放在一起,是因为它们有很多的共同点。单看题目背景就知道其实它们挺类似的:都是在棋盘(网格)中,且点与点之间有相互的排斥关系。实际上它们的解法思想也几乎一模一样。方格取数先讲方格取数。首先我们发现这类问题的最重要的特点:点与点之间会互相排斥,且每个点只有选与不选两种状态。于是我们可以考虑构建二分图,并建立超级源点sss和汇点t...原创 2019-04-26 20:09:39 · 484 阅读 · 0 评论