标签 - 模板

? 解题记录 ? ? 洛谷 ? ? 线段树 ? ? 模板 ?    2017-09-09 17:31:17    389    0    0
题目描述如题,已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.将某区间每一个数乘上x 3.求出某区间每一个数的和 输入输出格式输入格式:   第一行包含三个整数N、M、P,分别表示该数列数字的个数、操作的总个数和模数。 第二行包含N个用空格分隔的整数,其中第i个数字表示数列第i项的初始值。 接下来M行每行包含3或4个整数,表示一个操作,具体如下: 操作1: 格式:1 x y k 含义:将区间[x,y]内每个数乘上k 操作2: 格式:2 x y k 含义:将区间[x,y]内每个数加上k 操作3: 格式:3 x y 含义:输出区间[x,y]内每个数的和对P取模所得
? 解题记录 ? ? 洛谷 ? ? 扩展欧几里得 ? ? 模板 ?    2017-08-21 17:17:21    529    0    0
题目背景这是一道模板题 题目描述给定n,p求1~n中所有整数在模p意义下的乘法逆元。 输入输出格式输入格式:   一行n,p   输出格式:   n行,第i行表示i在模p意义下的逆元。   输入输出样例输入样例#1:10 13 输出样例#1:1 7 9 10 8 11 2 5 3 4 说明1 \leq n \leq 3 \times 10 ^ 6, n < p < 200005281≤n≤3×10​6​​,n<p<20000528 输入保证 pp 为质数。 突然觉得之前太傻了……居然拿逆元硬转成了线
? 解题记录 ? ? 洛谷 ? ? LCA ? ? 树链剖分 ? ? 模板 ?    2017-07-29 14:03:13    286    0    0
题目描述如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先。 输入输出格式输入格式:   第一行包含三个正整数N、M、S,分别表示树的结点个数、询问的个数和树根结点的序号。 接下来N-1行每行包含两个正整数x、y,表示x结点和y结点之间有一条直接连接的边(数据保证可以构成树)。 接下来M行每行包含两个正整数a、b,表示询问a结点和b结点的最近公共祖先。   输出格式:   输出包含M行,每行包含一个正整数,依次为每一个询问的结果。   输入输出样例输入样例#1:5 5 4 3 1 2 4 5 1
? 解题记录 ? ? 洛谷 ? ? 割点 ? ? 模板 ?    2017-07-28 15:06:21    393    0    0
题目背景割点 题目描述给出一个n个点,m条边的无向图,求图的割点。 输入输出格式输入格式:   第一行输入n,m 下面m行每行输入x,y表示x到y有一条边   输出格式:   第一行输出割点个数 第二行按照节点编号从小到大输出节点,用空格隔开   输入输出样例输入样例#1:6 7 1 2 1 3 1 4 2 5 3 5 4 5 5 6 输出样例#1:1  5 说明n,m均为100000 tarjan 图不一定联通!!!    &nbs
? 解题记录 ? ? 洛谷 ? ? LCT ? ? 模板 ?    2017-07-27 09:50:29    365    0    0
题目背景动态树 题目描述给定N个点以及每个点的权值,要你处理接下来的M个操作。操作有4种。操作从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。 输入输出格式输入格式:   第1行两个整数,分别为N和M,代表点数和操作数。 第2行到第N+1行,每行一个整数,整数在[1,10^9]内,代表每个点的权值。 第N
? 解题记录 ? ? 洛谷 ? ? Splay ? ? 替罪羊树 ? ? Treap ? ? 模板 ? ? 平衡树 ?    2017-07-21 10:06:08    432    0    0
题目描述您需要写一种数据结构(可参考题目标题),来维护一些数,其中需要提供以下操作: 插入x数 删除x数(若有多个相同的数,因只删除一个) 查询x数的排名(若有多个相同的数,因输出最小的排名) 查询排名为x的数 求x的前驱(前驱定义为小于x,且最大的数) 求x的后继(后继定义为大于x,且最小的数)输入输出格式输入格式: 第一行为n,表示操作的个数,下面n行每行有两个数opt和x,opt表示操作的序号(1<=opt<=6) 输出格式: 对于操作3,4,5,6每行输出一个数,表示对应答案 输入输出样例输入样例#1:10 1 106465 4 1 1 317
? 解题记录 ? ? 洛谷 ? ? LCA ? ? 倍增 ? ? 模板 ?    2017-07-18 11:19:55    284    0    0
题目描述如题,给定一棵有根多叉树,请求出指定两个点直接最近的公共祖先。 输入输出格式输入格式:   第一行包含三个正整数N、M、S,分别表示树的结点个数、询问的个数和树根结点的序号。 接下来N-1行每行包含两个正整数x、y,表示x结点和y结点之间有一条直接连接的边(数据保证可以构成树)。 接下来M行每行包含两个正整数a、b,表示询问a结点和b结点的最近公共祖先。   输出格式:   输出包含M行,每行包含一个正整数,依次为每一个询问的结果。   输入输出样例输入样例#1:5 5 4 3 1 2 4 5 1
? 解题记录 ? ? 洛谷 ? ? cdq分治 ? ? 模板 ? ? 分治 ?    2017-07-18 11:19:52    1231    0    0
题目背景这是一道模版题 可以使用bitset,CDQ分治,K-DTree等方式解决。 题目描述有  个元素,第  个元素有 、、 三个属性,设  表示满足  且  且  的  的数量。 对于 ,求  的数量 输入输出格式输入格式:  第一行两个整数 、,分别表示元素数量和最大属性值。 之后  行,每行三个整数 、、,分别表示三个属性值。   输出格