首页 > TAG信息列表 > 建边

杂题

给定一个长为 \(n\) 的字符串 \(S\) 的 \(n-m+1\) 个长位 \(m\) 的连续子串,构造 \(S\) 。 一开始想的是两两字符串建边然后跑最长路,然后发现这样子只能跑哈密顿回路,复杂度很大。 可以对长为 \(m\) 的字符串前 \(m-1\) 个与 后 \(m-1\) 个子串建边,避免了重复点多的问题,同时也可以跑

[模板] 前缀建边

例题:Riddle 对于本题而言,每个点有两种状态:选或不选。 同时题目又给出限制条件:点集内只能选一个点,一条边上至少选一个点 这也太明显了吧 所以就是在点集内,若选择某个点则另外的点不能选;一条边上,若不选某个点,则另一个点必选。此时已经很显然了,2-SAT建边跑强连通分量判断是否矛盾,完事

poj2502 subway 建边+最短路

#可以选择步行也可以选择坐地铁,坐地铁快,求家到学校距离 #有点像做过的某题,不同岛间有航道,岛上有不同的上岸点,做法是分开内部处理好后再总的跑一遍最短路#考虑这样建图: 假如没有地铁,所有点之间只能步行,先建一波。 有地铁是对步行的优化,在地铁间再建一波。 把这些点扔进去一起跑最短

National Treasures HDU - 3360

原题链接 考察:二分图匹配 思路:   实际考察最小覆盖点.将文物与它的关键点建边.除此之外我们需要将点分为两个集合.可以发现每个点与它的关键点奇偶性不同.由此将点分为\(x+y\)为奇和偶两个集合.   注意建边,需要\((x,y)\)为关键点与文物建边,\((x,y)\)与它的关键点建边. Cod

解题报告 (二) 强连通和2-sat

有向图强连通-算法详解 强连通分量题集 1)迷宫城堡       题意:给定N个点M条边(N <= 10000, M<= 100000),问是否存在任意的点对(i, j)使得i能够到j,并且j也能够到i。存在输出Yes,否则输出No。       题解:强连通分量的定义题。对原图求一次强连通,如果强连通分量为1,输出Yes,否则No。

B. Navigation System(思维+反向建边最短路/最短路计数)

https://codeforces.com/problemset/problem/1320/B 思路: 需要看当前路线的下一步是否在最短路径上。如果在的话(最短距离-1)就找其相同的到最短距离的到终点的路径有多少。 如果不在的话就说明自己走的路线不在最短路上,导航更正一次。 至于怎么找多个点到终点的最短路,反向建图

最小生成树

Kruskal的优化: 以Highways 这题为例 思路,点之间两两建边,利用kruskal和并查集,先连上已有的边(将边的两个端点放入一个并查集中),再将不同集合的边连接直到边数等于n 做题过程1:结构体2个(Point记录点坐标,Edge记录每条边的情况),优先队列(至今为止Kruskal用的好像都是这个?,每两个

P5025 [SNOI2017]炸弹

原题链接  https://www.luogu.org/problem/P5025     闲话时刻:     第一道 AC 的黑题,虽然众人皆说水。。。  其实思路不是很难,代码也不是很难打,是一些我们已经学过的东西凝合在一起,只要基础扎实的话,做出这道题目来说也就很简单了(不包括我); 题目大意: 有 n 个点,每个点可影响

模拟测试59

T1:   翻转区间相当于位移,但是边界附近的点要特判。   可以处理出最左侧和最右侧的对称轴,然后分类讨论每个数的位置,即可知道他能移动到的区间。   用set进行bfs即可,相同的点不会被遍历两次。   也可以线段树优化建边,注意优化建边跑双端队列bfs一定要把出边的权值设为1。  

线段树优化建边

没做过几道题,线段树优化建边和虚点有关,可以有效处理区间/单点和区间的点连边的问题,防TLE或MLE 在线段树中每一个节点都是能代表整个它控制区间的虚点,这些点都向它的儿子连权值为0的边。而叶子直接连序列上的实点。 举个例子,4点向区间[1,2]连边,那么可以直接连线段树2节点对应的虚

【洛谷P5331】【SNOI2019】—通信(最小费用最大流+主席树优化建边)

传送门 洛谷垃圾数据 写暴力,不开longlonglonglonglonglong都能过 由于n≤1000n\le1000n≤1000 所以能很简单的想到n2n^2n2建边的费用流 洛谷数据只需要在建边的时候判一下val≤wval\le wval≤w就可以过 考虑把绝对值拆开 对2种情况分别以权值为下标建主席树建边即可 #incl

【luogu1993】 小K的农场 [差分约束]

1993 小K的农场 存一下 不想打字... 1、a-b\geq ca−b≥c,建边w[b,a]=c(表示a比b大c) 2、a−b≤c即b≥a−c,建边w[a,b]=-c(表示b比a小c,注意不能建边w[b,a]=c因为这和第一个约束冲突,所以反过来就好了) 3、a==b时,建边w[a,b]=w[b,a]=0(表示a和b相等) 然后从0向i=1~n每个点连边w[0,i]=0(随便值

BZOJ3073 Journeys - 线段树优化建边

题目描述 Seter建造了一个很大的星球,他准备建造N个国家和无数双向道路。N个国家很快建造好了,用1..N编号,但是他发现道路实在太多了,他要一条条建简直是不可能的!于是他以如下方式建造道路:(a,b),(c,d)表示,对于任意两个国家x,y,如果a<=x<=b,c<=y<=d,那么在xy之间建造一条道路。Seter保

bzoj3218 a+b Problem(最小割+主席树优化建边)

由于6.22博主要学测,大半时间学文化课,近期刷题量&写题解的数量会急剧下降。 这题出得挺经典的,首先一眼最小割,考虑朴素的做法:与S联通表示白色,与T联通表示黑色,S向i连流量为w[i]的边,i向T连流量为b[i]的边,然后i'向i连容量为p[i]的边,所有满足条件的j向i'连一条容量为无穷大的边(只要满足其

$P1194 买礼物$

\(problem\) 简单的说 这是一道最小生成树的模板题(背板子就行了) 然而刚看到这题 还不知道什么意思。 所以的话 考虑建边 怎么建边呢? 看到这题毫无头绪 第 i 件物品对 j 有优惠的话就建边 然后从 0 向各点连边权为a的边 inline void Add(int u,int v,int w) { cnt +

2019年3月2日训练日记

差分约束/2-SAT小结: 差分约束: 1、题目特征一般比较明显,是求解关于一组变数的特殊不等式组。 2、一般分三种:最长路(求最小值)、最短路(求最大值)、判断解是否存在(判负环)。 3、建边的时候一定要注意隐含的不等式。根据题目所给信息灵活加边加超级源点,灵活应对各种不同的输出。 核心还

[SCOI2011]糖果

开门见山进入主题。   需要差分约束,重点是如何根据大小关系去建图。  我们不妨假设边u→v表示的是v比u大多少,贪心的想到要使得最后的糖果数最小,就尽可能的使得相连的两点糖果数差值尽可能的小(一定是以两者间小的为标准,相等时差为0,否则大的数比小的至少大1),最后的糖果总数显然最大

CF_863_F(Netflow)

codeforces_863_F 题目大意:给出一个数组的大小(n<=50),以及每个位置填数的范围限制(若无限制,即为1-n),最后求填出数组的最小花费,定义总花费为数组中每个数出现次数的平方和。(sum_cnt[i]^2 (1<=i<=n))。 题解:费用流,要不是最近在学,我都不敢信网络流这么强大,想清楚怎么转化和建边之后,实现没