模板
余西子
这个作者很懒,什么都没留下…
展开
-
P3690 【模板】Link Cut Tree (动态树)
给定 n 个点以及每个点的权值,要你处理接下来的 m 个操作。操作有四种,操作从 0 到 3 编号。点从 1 到 n 编号。0 x y 代表询问从 x 到 y 的路径上的点的权值的 xor 和。保证 x 到 y 是联通的。1 x y 代表连接 x 到y,若 x 到 y 已经联通则无需连接。2 x y 代表删除边 (x,y),不保证边 (x,y) 存在。3 x y 代表将点 x 上的权值变成 y。#include <bits/stdc++.h>#define rep(i, a, b原创 2020-08-14 16:00:50 · 270 阅读 · 0 评论 -
竞赛图 哈密顿图
竞赛图竞赛图是通过在无向完整图中为每个边缘分配方向而获得的有向图(有向图)。 也就是说,它是一个完整图形的方向,等价于一个有向图,其中每对不同的顶点通过单个有向边连接,即每对顶点之间都有一条边相连的有向图称为竞赛图。总的概括就是一个有向完全图。与哈密顿路径的关系任何有限数量n个顶点的竞赛图都包含一个哈密尔顿路径,即所有n个顶点上的直线路径。假设该语句适用于n,并考虑n + 1个顶点上的...原创 2020-02-27 16:07:59 · 3623 阅读 · 0 评论 -
cf 246 E. Blood Cousins Return 二分+主席树
题目链接: http://codeforces.com/problemset/problem/246/E题意:你现在有一棵 1e51e51e5 个结点的树,每个结点有一个权值。你现在有 1e51e51e5 个询问,每个询问会有两个值 v,kv,kv,k ,询问的是结点 vvv 的往下第 kkk 代所有结点中有多少个不同的权值。做法:因为每一层的结点都已经固定了,所以我们可以按照层序遍历来...原创 2019-11-04 10:03:52 · 267 阅读 · 0 评论 -
2014-2015 ACM-ICPC, NEERC L. Useful Roads 支配树
题目链接: 我是链接题意:一个 2e52e52e5 个点, 2e52e52e5条边的有向图。我们定义一条简单路径为,没有一个结点被走过超过一次的路径。现在我们从结点 111 出发走简单路径,如果到达某一个点 xxx 的路径上如果经过 u→vu\rightarrow vu→v ,那么这条路径要被保留。现在要你输出所有要被保留的路径编号。做法:可能题目里面有点绕,对于一条路径是否被保留的说法...原创 2019-11-03 20:29:06 · 179 阅读 · 0 评论 -
cf 231 E. Cactus 仙人掌图圆方树
题目链接: http://codeforces.com/problemset/problem/231/E题意:你现在有一个 1e51e51e5 个点的仙人掌图(每个边最多只属于一个简单环),定义一条简单路径为一条边最多只被走过一次的路径。你现在有 1e51e51e5 个询问,每次询问从 a−>ba->ba−>b 有多少条简单路径,答案 modmodmod 1e9+71e9+...原创 2019-11-02 09:54:51 · 230 阅读 · 0 评论 -
2-sat 小结
定义简略的说, nnn 个变量 aia_iai,且 ai∈[0,1]a_i\in[0,1]ai∈[0,1]。给出一些条件,形式如下:aia_iai opopop aj=0/1(op∈[and,or,xor])a_j =0/1(op\in[and,or,xor])aj=0/1(op∈[and,or,xor])求解 2−SAT2-SAT2−SAT 即找到一组合法的 aaa 满足所有限...原创 2019-10-25 10:54:06 · 144 阅读 · 0 评论 -
316C Tidying Up 费用流的完美匹配
题目链接: http://codeforces.com/gym/257279/problem/C题意:你有一个 n∗mn*mn∗m 的矩阵,这些方格中有数字 1−n∗m/21-n*m/21−n∗m/2 每个数字出现两次,现在要你选出最少的方格个数,使得在这些方格内数字可以任意交换的情况下,可以实现两个相同的数字邻接。做法:感觉就是用图论做,就是网络流建不出图来…和队友综合一下应该就能过了…...原创 2019-10-24 10:04:15 · 208 阅读 · 0 评论 -
差分约束小结
背景果然还是要吃个亏摔一下才会知道做点什么,之前一直挺忽视这个知识点的(毕竟是大一下开始学了算法之后就没碰到过的题型),直到今年CCPC在哈尔滨碰到了一道现在被队友吐槽是模板题的题目。当引起重视,在借鉴大佬的博客的前提下写一些小结,以示警戒。正题一、差分约束的概念如果一个系统由 nnn 个变量和 mmm 个约束条件组成,形成 mmm 个形如ai−aj≤ka_i-a_j≤kai−aj≤k...原创 2019-10-16 20:49:55 · 124 阅读 · 0 评论 -
H - Little Wish~ lyrical step~ HDU - 4735 跳舞链
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4735题意: 给你一棵无向有权树,每个结点上有一个男生或者女生,当一个女生开始的距离小于等于d的范围内有一个男生,那么这个女生就算是被保护着了。现在问,你要交换几个男生的位置可以让所有的女生被保护做法: 为了这道题特意去学了一下跳舞链,知道了跳舞链不仅仅能用...原创 2019-07-13 21:09:15 · 163 阅读 · 0 评论 -
cd #568 (Div. 2) F. Two Pizzas 高维前缀和 or 暴力
题目链接:http://codeforces.com/contest/1185/problem/F题意: n个客人和m个披萨,每个客人都有自己喜欢的口味(口味是1~9九个数字里面的任意组合),每个披萨也都有不同的口味,且有一个价格,n和m都是1e5,问你从中选哪两个披萨,能满足的最多的客人,并且在最多客人的情况下价格最低。做法: 发现其实暴力也...原创 2019-06-26 15:13:55 · 195 阅读 · 0 评论 -
CodeForces - 407C C - Curious Array 高阶差分序列
题目链接:http://codeforces.com/problemset/problem/407/C题意: 给你一个长为1e5的a数组,1e5个请求,每个请求都会给你一个l,r,k,要你对l到r中所有的位置i加上,问你做法: 不是很会总结就意会一下吧。对于k为0的时候,只要再l处+1,在r+1处加一个-1,那么我们进行一次累加,中间就都会变成1 1 ...原创 2019-07-18 10:25:49 · 159 阅读 · 0 评论 -
hdu 3311 Dig The Wells 斯坦纳树模板
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3311题意: 给你n个寺庙,m个村庄,p条路,现在你要在这n+m个位置中选出若干个位置打井,每个位置打井的费用会告诉你,同时p条路也有修建费用,现在每个寺庙都住着一个和尚,问你最小的费用让这n个和尚都能喝上水。一些过程写进了代码,主要用的是状压的思想。具体的解释还是...原创 2019-06-04 20:27:22 · 226 阅读 · 0 评论 -
E. Salazar Slytherin's Locket 裸数位dp
题目链接:http://codeforces.com/contest/855/problem/E题意: 一个数是魔幻数,当且仅当这个数中0~base-1(假设它是base进制)的个数都为偶数,假设1010(二进制数)就是一个魔幻数,问你十进制的l到r中在b进制下,有多少个魔幻数。做法: 裸的数位dp。。。dp[i][j][k][z]表示,在i进制下,现...原创 2019-05-30 19:29:43 · 378 阅读 · 0 评论 -
hdu 6194 后缀数组+RMQ+lcp
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6194题意 给你一个字符串,要你求出这个字符串中正好出现k次的子串的个数有多少个。 花了很长一段时间,因为发现板子好像错了,找了好久的bug,就当现在又更新了一遍板子...做法: 我们要找连续出现k次的,肯定是从sa数组下手,因为sa[i]...原创 2019-03-26 10:18:06 · 222 阅读 · 0 评论 -
F - Rectangles Gym - 101982F 扫描线+线段树
题面:http://codeforces.com/gym/101982/attachments/download/7897/20182019-acmicpc-pacific-northwest-regional-contest-div-1-en.pdf题意:给出n个矩形的位置,问重叠奇数个矩形的面积之和做法: 和一般的线段树不一样,要将原来的[l,mid],[mi...原创 2019-03-18 13:47:34 · 288 阅读 · 0 评论 -
A2. Death Stars (medium) 哈希暴力
题目链接:http://codeforces.com/problemset/problem/958/A2题意: 给你一个n*m s1和m*n s2的二维字符数组,保证m<n,要你找到一个s1的行和s2的列,让这里往右(往下)的m列(行),相同,题目保证一定有解。做法: 基础的哈希题目,把行开始,列部分的数据哈希掉,然后比对就好了,这里要注...原创 2019-06-04 21:20:07 · 271 阅读 · 0 评论 -
hdu 1255 扫描线+线段树计算矩形面积并
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1255题意:给你n个矩形,要你计算这些矩形被覆盖两次以上部分的面积和。做法: 刚学的扫描线,留个板子和参考链接,很多地方容易出细节问题。#include<bits/stdc++.h>#define lson rt<<1#defin...原创 2019-03-18 11:27:41 · 110 阅读 · 0 评论 -
POJ 3762 区间K覆盖 模板
题目链接:http://poj.org/problem?id=3762 题意: 给你n个区间,每个区间都有一个自带的权值,你要从里面选取若干个区间,注意每个区间只可以被选择一次,使得每个数轴上没有点可以被使用超过K次并且使得到的权值最大。 做法: 第一次学区间K覆盖,学到了这个神奇的K覆盖。让我用一个丑丑的图来解释一下网上那些题解里面讲的。 ...原创 2018-09-17 18:54:31 · 218 阅读 · 0 评论 -
POJ 3621 Sightseeing Cows 最优比例环
题目链接:http://poj.org/problem?id=3621 题意: 给你L个点,P条边,每个点和边都有各自的权值,现在要你求一个环,使得这个环的点权/边权最大。 做法: 自己做当然是。。。不会做啦。。这个坑已经放在这里很久,之前做了最优比率生成树的,这样三个01分数规划的专题就算完成了。因为我们要求一个最大的,那么我们设这个比例为x,那么...原创 2018-09-14 19:31:14 · 168 阅读 · 0 评论 -
E - Enigma Gym - 101889E dp求可除一个整数的最小数
题目链接:https://odzkskevi.qnssl.com/fa6682426fb11e87a5ab9246f22a461d?v=1538674155 题意: 给你一个长度为1000的字符串s和一个最大为1000的数n,s中有至少一位的数是用?表示的,你要将这个字符串还原成一个可以整除n的数,问这个数最小是多少。如果找不到这样一个数那么输出*。 做法: ...原创 2018-10-05 20:24:50 · 166 阅读 · 0 评论 -
POJ 2104 主席树板子
题目链接:http://poj.org/problem?id=2104模板题,求区间第k小。 第k大把下面的数字改一下就好啦。 改成num-k+1就好乐!这里留两个板子吧..0~n-1和1~n的;#include <iostream>#include <cstdio>#include <cstring>#include <alg...原创 2019-03-01 16:03:19 · 261 阅读 · 0 评论 -
KMP 模板
#include<bits/stdc++.h>using namespace std;const int maxn=2005;const int mod=(int)1e9+7;typedef long long ll;//KMP匹配得到的next由子串ll ans;void kmp_next(char *str2,int *next){ int i,j; ...原创 2019-03-20 20:13:41 · 100 阅读 · 0 评论 -
B - Coprime Integers Gym - 101982B 莫比乌斯板子题
题目链接:http://codeforces.com/gym/101982题意: ,求gcd(x,y)=1的对数做法: 莫比乌斯函数,贴个链接。。 https://blog.csdn.net/jk_chen_acmer/article/details/82016719#include<bits/stdc...原创 2019-03-18 15:09:36 · 270 阅读 · 0 评论 -
hdu 6069 区间素数+思维
Counting Divisors Time Limit: 10000/5000 MS (Java/Others)Memory Limit: 524288/524288 K (Java/Others) Total Submission(s): 4021Accepted Submission(s): 1456 Problem Description...原创 2018-08-31 11:10:00 · 195 阅读 · 0 评论 -
hdu 1534 差分约束模板
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1534题意: 你现在有一个项目,这个项目有n个部分,每一个部分有一个需要持续完成的时间,一旦开始就不能停止直到结束,但是项目之间又有一些对应的关系。 “SAF a b”,项目a的开始必须在项目b结束之后, “FAF a b”,项目a的结束必须在项目b结束之后, “SAS a b...原创 2019-07-29 21:15:32 · 121 阅读 · 0 评论 -
数位dp模板题 谁有49
题意: 问你从1到n这些数之中,包含有连续“49”数字串的数有几个。做法: 数位dp裸题啊裸题!!题目读错也是很耻辱了,留个板子留个板子。。菜鸡伤不起。。。#include<bits/stdc++.h>#define rep(i,a,b) for(int i=(int)a;i<=(int)b;i++)using namespac...原创 2019-07-20 21:33:01 · 101 阅读 · 0 评论 -
P5236 【模板】静态仙人掌圆方树模板
链接: https://www.luogu.org/problem/P5236题意:你有一个 n(n<=10000)n(n<=10000)n(n<=10000) 个点 m(m<=20000)m(m<=20000)m(m<=20000) 条边的仙人掌,有 q(q<=10000)q(q<=10000)q(q<=10000) 个询问,每次询问两个...原创 2019-10-08 17:01:04 · 172 阅读 · 0 评论 -
Educational Codeforces Round 34 G. Yet Another Maxflow Problem 线段树实现最小割
题目链接: https://codeforces.com/contest/903/problem/G题意:在理解网络流的前提下简化的题目大概是,源点向 A1A_{1}A1 连流量 infinfinf , BnB_nBn 向汇点连流量 infinfinf,对于每个 i∈[1,n−1]i\in[1,n-1]i∈[1,n−1] 都有一条 Ai→Ai+1A_i\rightarrow A_{i+1...原创 2019-09-30 20:09:17 · 170 阅读 · 0 评论 -
hdu 4587 TWO NODES 点bcc
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=4587题意:现在你有一个3000个点的无向连通图,现在要你删掉两个点使得,剩下的图中的连通块数量最大,输出最大的连通块个数。做法:这道题可真是一波三折…本来以为自己考虑的差不多了,结果发现了一个小细节的地方有大学问。。先说为什么要用 bccbccbcc ,假设我们考虑只是删去一个点的情况。了...原创 2019-09-18 20:11:24 · 117 阅读 · 0 评论 -
E - Master of Subgraph HDU - 6268 树分治+bitset 计算所有子图权值和
题目链接: http://acm.hdu.edu.cn/downloads/CCPC2018-Hangzhou-ProblemSet.pdf题意:你现在有一棵有3000个有权结点的树,现在问你对于从 111 到 mmm 中的每一个数 xxx ,是否在树中存在一个子图,使得子图中点权和等于 xxx ,输出 mmm 个数 ,若存在则输出 111 ,否则输出 000 。做法:赛上的时候想到了 b...原创 2019-09-17 15:48:19 · 345 阅读 · 0 评论 -
The Preliminary Contest for ICPC Asia Shanghai 2019 J. Stone game 退背包
题目链接: https://nanti.jisuanke.com/t/41420题意:给你 nnn 个石子的集合 SSS (以下标为标识),并告诉你每个石子重量,现在要你选取一些石子 S′S'S′,要求满足以下条件。① sum(S′)>sum(S−S′)sum(S')>sum(S-S')sum(S′)>...原创 2019-09-16 19:03:18 · 251 阅读 · 0 评论 -
hdu 1914 稳定婚姻问题 模板
贴几个博客链接,模板自用…https://www.cnblogs.com/encodetalker/p/11001087.htmlhttps://blog.csdn.net/lifajun90/article/details/8659192#include <bits/stdc++.h>#define rep(i,a,b) for(int i=(int)a;i<=(int...原创 2019-08-30 18:31:15 · 167 阅读 · 0 评论 -
特殊代码使用(自用)
测试数据是否越界。struct node{ int & operator[](int idx){ if(idx>=maxn||idx<0)while(1); return a[idx]; } int operator[](int idx)const{ if(idx>=maxn||idx<0)w...原创 2019-08-13 18:33:01 · 250 阅读 · 0 评论 -
2019牛客暑期多校训练营(第七场)H-Pair 数位dp
题目链接:https://ac.nowcoder.com/acm/contest/887/H题意: 给你数字A,B,C,询问你能找到多少对(x,y),使得x->[1,A],y->[1,B],并且x&y>C和x^y<C两个条件中至少满足一个。做法: 由于要求上述两个条件中至少满足一个,在处理上需要去重会有些麻烦,所以我们考虑取反...原创 2019-08-09 09:56:14 · 425 阅读 · 7 评论 -
以洛谷 P3377 【模板】左偏树(可并堆) 为例的左偏树
洛谷链接: https://www.luogu.org/problem/P3377定义左偏树是一种可并堆的实现。左偏树是一棵二叉树,它的节点除了和二叉树的节点一样具有左右子树指针(left, right)外,还有两个属性: 键值和距离(英文文献中称为s-value)。键值用于比较节点的大小。下面的是百度百科给出的距离的定义。如果想要严谨的可以参考下面的内容,我感性理解一下就是,没有两个儿子...原创 2019-08-13 12:51:21 · 283 阅读 · 0 评论 -
hdu 5972 Regular Number &的字符串快速匹配
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5972题意: 给你一个目标串长度以及每个位置可能出现的数字,比如第一位可以是1 2 3,第二位可以是4 1 3,这样的话如果匹配串里出现了13,42 ,41 都算是合理的。要你找出这些串并输出。做法: 很神奇的做法,用bitset来先维护好每一个数字i可以...原创 2019-08-02 10:06:57 · 132 阅读 · 0 评论 -
hdu 6621 多校第四场 K-th Closest Distance 主席树
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6621题意: 给你1e5个数和1e5个询问,每个询问给你一个区间L,R 一个质数P和一个数K,你要找到数组中区间L到R中和P距离第k小的值(P和一个数x的距离为abs(P-x))。做法: 第k小其实听着就很像是主席树的样子,但是这里是和一个固定的数的距离,...原创 2019-07-31 20:00:10 · 244 阅读 · 0 评论 -
poj 1422 Air Raid 二分图模板
题目链接:http://poj.org/problem?id=1422#include<vector>#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>#define rep(i...原创 2019-07-26 19:37:24 · 98 阅读 · 0 评论 -
hdu 5575 Discover Water Tank 左偏树
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5575题意:现在有一个巨大的水库(可视为二维的),水库中间被 n−1n-1n−1 个挡板分成了 nnn 个部分,你知道这些挡板的高度。现在你知道 mmm 条探测的结果,每一条探测结果是 x,y,flagx,y,flagx,y,flag 表示第 xxx 个部分,高为 y+0.5y+0.5y+0.5 ...原创 2019-08-13 14:49:35 · 191 阅读 · 0 评论 -
hdu-4694 支配树模板
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=题意: 给你n个女生的联系情况,第n个人是大姐大(即题目中的根),从它开始会向其他人发送消息,如果第y个人失联了那么第x个人就无法收到消息,就称y是x的一个重要的姐妹,现在问你每个人的重要的姐妹的编号总和,如果不连通那么就是0。做法: 看了将近三个小时的支配树...原创 2019-08-04 18:23:57 · 175 阅读 · 0 评论