gwj1139177410的博客

Link-Cut, Time doesn’t stop. Prepare your doubts, Eat them up.

排序:
默认
按更新时间
按访问量

【NOI2002】【Luogu1196】银河英雄传说(并查集带边权)

problem 占坑待填 solution 并查集维护战舰集合。 记录size表示战舰所在队列大小。 记录ranks表示某战舰到父亲之间战舰的个数。 合并时a,b时,令ranks[b]=size[a]。 codes //带权并查集,维护每个节点(战舰)到该列舰首的位置和每列战舰的...

2018-05-21 21:37:31

阅读数:33

评论数:0

【TJOI2016】【bzoj4552】排序(二分答案+线段树01排序)

problem 给出一个1到n的全排列,现在对这个全排列序列进行m次局部排序 排序分为两种 1:(0,l,r)表示将区间[l,r]的数字升序排序 2:(1,l,r)表示将区间[l,r]的数字降序排序 最后询问第q位置上的数字。 solution 考虑二分答案 对于mid 1...

2018-05-18 06:08:36

阅读数:35

评论数:0

【POJ3784】Running Median(中位数,对顶堆)

description 输入M个数,当已输入的个数为奇数个时输出此时的中位数。 一共有M/2+1个中位数要输出,每一行10个。 solution 维护两个优先队列。 大根堆q1维护比当前中位数小的元素。 小跟堆q2维护比当前中位数大的元素。 我们把中位数放在大根堆q1的堆顶,于是有:...

2018-05-16 12:54:20

阅读数:53

评论数:0

【luogu3373】模板 线段树 2

题面 已知一个数列,你需要进行下面三种操作: 1.将某区间每一个数乘上x 2.将某区间每一个数加上x 3.求出某区间每一个数的和 题解 区间修改+区间查询。 维护两个LazyTag #include<iostream> #incl...

2018-04-23 12:46:55

阅读数:39

评论数:0

【luogu3368】模板 树状数组 2

题面 已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数数加上x 2.求出某一个数的和 题解1 单点查询+区间修改。 -。-说了树状数组模板那就用树状数组。 树状数组维护差分数列即可(差分前缀和是逆操作,树状数组原先的区间查询就变成了单点查询了)。 来介绍一下差...

2018-04-22 21:11:29

阅读数:43

评论数:0

【JSOI2008】【bzoj1012】最大数maxnumber

题面 维护一个数列,提供以下两种操作: 1、 查询操作:查询当前数列中末尾L个数中的最大的数,并输出这个数的值。 2、 插入操作:将n加上t,其中t是最近一次查询操作的答案(如果还未执行过查询操作,则t=0),并将所得结果对一个固定的常数D取模,将所得答案插入到数列的末尾。 题解 1...

2018-04-22 20:28:08

阅读数:30

评论数:0

【poj3468】A Simple Problem with Integers

题面 You have N integers, A1, A2, … , AN. You need to deal with two kinds of operations. One type of operation is to add some given number to each nu...

2018-04-20 21:35:07

阅读数:47

评论数:0

【luogu3372】线段树 1 模板

题面 已知一个数列,你需要进行下面两种操作: 1.将某区间每一个数加上x 2.求出某区间每一个数的和 题解 区间修改+区间查询 线段树模板 #include<iostream> #define maxn 100010 #define l...

2018-04-20 21:33:04

阅读数:43

评论数:0

【luogu1816】忠诚

题面 RMQ问题 题解 线段树 #include<iostream> #include<algorithm> using namespace std; const int maxn = 100010...

2018-04-20 13:19:30

阅读数:23

评论数:0

【LibreOJ109】【模板】并查集

并查集模板,就酱紫。 #include<iostream> using namespace std; #define mod 998244353 long long ans; int fa[4000010]; int find(in...

2018-04-17 12:59:30

阅读数:39

评论数:0

【luogu3374】模板 树状数组 1

题面 已知一个数列,你需要进行下面两种操作: 1.将某一个数加上x 2.求出某区间每一个数的和 题解1 单点修改+区间查询。 关于树状数组的理解,补上一点。位运算的操作其实对应的就是任意一个整数在二进制下都可以被拆分为2^i+2^i-1+…这种形式,所以将1~n的区间也拆成这种好几...

2018-03-28 21:13:18

阅读数:35

评论数:0

【NOI2001】【Vijos1531】食物链(并查集拓展域)

//本题思路:把x作为a,b,c三种动物分别加入,维护三个集合的关系。 //并查集及补集 //其中i用来连接与i同类的,i+n用来连接能吃i的,i+2*n用来连接i能吃的。 //具体来说,凡是与i+n节点在同一个集合里的,都是被i吃的动物。 #include<iost...

2018-03-25 10:40:39

阅读数:76

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭