07 2019 档案
摘要:题意:给你n个数和q次查询,查询[l , r] 内, | a[i] - p | 第k小的数思路:二分答案,check的话就判断[l , r]区间内,[p-mid,p+mid]区间内数的个数和k的关系,若大于,则往...
阅读全文
摘要:题意:给你n个数和q次查询,查询[l , r] 内, | a[i] - p | 第k小的数思路:二分答案,check的话就判断[l , r]区间内,[p-mid,p+mid]区间内数的个数和k的关系,若大于,则往...
阅读全文
摘要:#include#include#includeusing namespace std;struct cmp{ bool operator () ( int r , int l ){ ...
阅读全文
摘要:#include#include#includeusing namespace std;struct cmp{ bool operator () ( int r , int l ){ ...
阅读全文
摘要:https://codeforces.com/contest/1140/problem/C#includeusing namespace std;#define ls rt>1; ll tmp=0; ...
阅读全文
摘要:https://codeforces.com/contest/1140/problem/C#includeusing namespace std;#define ls rt>1; ll tmp=0; ...
阅读全文
摘要:判断正方形方法:三个条件同时满足(1:四条边相等,2:边不为0,3:有一个直角)判断矩形的话就是条件1变为有2对边相等 #include #include #include using namespace ...
阅读全文
摘要:判断正方形方法:三个条件同时满足(1:四条边相等,2:边不为0,3:有一个直角)判断矩形的话就是条件1变为有2对边相等 #include #include #include using namespace ...
阅读全文
摘要:https://ac.nowcoder.com/acm/contest/946/对操作顺序执行的话,会出现递归调用的情况,这样的话复杂度起码是m^2了,所以考虑把操作离线,然后逆序执行,这样的话已经执行过的就不会...
阅读全文
摘要:https://ac.nowcoder.com/acm/contest/946/对操作顺序执行的话,会出现递归调用的情况,这样的话复杂度起码是m^2了,所以考虑把操作离线,然后逆序执行,这样的话已经执行过的就不会...
阅读全文
摘要:今天才知道可以在multiset里自带了lowbound和uppbound函数,而且用起来比三个参数的要快,multiset和set区别就是可以放重复元素,用迭代器删只会删指定的那一个,按数值删会把该值全删了...
阅读全文
摘要:今天才知道可以在multiset里自带了lowbound和uppbound函数,而且用起来比三个参数的要快,multiset和set区别就是可以放重复元素,用迭代器删只会删指定的那一个,按数值删会把该值全删了...
阅读全文
摘要:题意:给一个矩阵求a*b的子矩阵里最小值之和 思路是开n个单调队列,然后当j>=b时,n个单调队列就会维护每一行每个长度为b的区间里的最小值,然后我们要从这n个单调队列的队头里,每a个取一个最小值(此最小值...
阅读全文
摘要:题意:给一个矩阵求a*b的子矩阵里最小值之和 思路是开n个单调队列,然后当j>=b时,n个单调队列就会维护每一行每个长度为b的区间里的最小值,然后我们要从这n个单调队列的队头里,每a个取一个最小值(此最小值...
阅读全文
摘要:线性基是啥? 你可以理解为将一个序列处理完之后得到的产物,有如下性质:原序列里面的任意一个数都可以由线性基里面的一些数异或得到。 线性基里面的任意一些数异或起来都不能得到0 线性基里面的数的个数唯一,...
阅读全文
摘要:线性基是啥? 你可以理解为将一个序列处理完之后得到的产物,有如下性质:原序列里面的任意一个数都可以由线性基里面的一些数异或得到。 线性基里面的任意一些数异或起来都不能得到0 线性基里面的数的个数唯一,...
阅读全文
摘要:Color the Ball题意:一开始全部点为黑色,然后给n个区间染色,染色为白色或黑色,最后统计哪段区间白色最长,要最右边的。这题因为没说区间有多少个点,所以一开始不知道线段树要维护多长的区间,但是操作只有2...
阅读全文
摘要:Color the Ball题意:一开始全部点为黑色,然后给n个区间染色,染色为白色或黑色,最后统计哪段区间白色最长,要最右边的。这题因为没说区间有多少个点,所以一开始不知道线段树要维护多长的区间,但是操作只有2...
阅读全文
摘要:Coder HDU - 4288 题意:你有n次操作,每次可以往集合里插入元素,删除元素,然后如果是求和操作的话,是求升序排序的情况下,pos%5==3的位置的数之和。思路:因为要开权值线段树数很大,所以先把操作...
阅读全文
摘要:Coder HDU - 4288 题意:你有n次操作,每次可以往集合里插入元素,删除元素,然后如果是求和操作的话,是求升序排序的情况下,pos%5==3的位置的数之和。思路:因为要开权值线段树数很大,所以先把操作...
阅读全文
摘要:1 Byte = 8 Bit1 KB = 1,024 Bytes1 MB = 1,024 KB = 1,048,576 Bytes一个int是4字节即4Byte.求个数和求和类似,不过是在更新的时候把1变成了这个...
阅读全文
摘要:1 Byte = 8 Bit1 KB = 1,024 Bytes1 MB = 1,024 KB = 1,048,576 Bytes一个int是4字节即4Byte.求个数和求和类似,不过是在更新的时候把1变成了这个...
阅读全文
摘要:对于树上路径上点权,边权问题,查询次数很多,如果用差分的话,每次查询前都有对c数组求一遍树上前缀和,然后dfs求个dis才能知道两点之间信息,这样的话对于修改然后查询,修改然后查询。。。。这样的复杂度就很高了...
阅读全文
摘要:对于树上路径上点权,边权问题,查询次数很多,如果用差分的话,每次查询前都有对c数组求一遍树上前缀和,然后dfs求个dis才能知道两点之间信息,这样的话对于修改然后查询,修改然后查询。。。。这样的复杂度就很高了...
阅读全文
摘要:因为准备学树剖于是又学了树差分。点差分:u至v路径上所有点点权+1,那么c[u]++,c[v]++,c[lca]--,c[fa[lca]]--,可以在多次更新树链的点之后,得到某点权值边差分:边差分的话要把边的...
阅读全文
摘要:因为准备学树剖于是又学了树差分。点差分:u至v路径上所有点点权+1,那么c[u]++,c[v]++,c[lca]--,c[fa[lca]]--,可以在多次更新树链的点之后,得到某点权值边差分:边差分的话要把边的...
阅读全文
摘要:题意就是给一棵树,然后有2种操作,一是问以x为根节点的子树有多少苹果,二是更改某点的苹果数量。 做法就是用dfs序把树形结构转化成线性结构也就是区间,然后用线段树维护。先要求出每个点的in和out值,然后就给...
阅读全文
摘要:题意就是给一棵树,然后有2种操作,一是问以x为根节点的子树有多少苹果,二是更改某点的苹果数量。 做法就是用dfs序把树形结构转化成线性结构也就是区间,然后用线段树维护。先要求出每个点的in和out值,然后就给...
阅读全文