分块
文章平均质量分 79
蒟蒻111
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
URAL 2080 Wallet 分块求无修改的区间内不同数的个数
先求一个pre数组,表示每个值为a[ i ]的数上一次出现在哪里,如果这个pre[i]在所求区间内,则不应计入数字种类的总数,否则计入。 分块以后把每个块内部的pre数组排序,二分在块内求pre值在不在区间内的数量,再把每个块的总和累计就是所求区间内不同的数的种类,复杂度O(n*sqrt(n)*log( sqrt(n) ) )左右吧。。。 #include #include #includ原创 2017-08-04 10:17:25 · 402 阅读 · 0 评论 -
HDU 5193 块状链表求带插入删除操作的全局逆序对数
#include #include #include #include #include #include #define maxn 20010 #define maxlim 150 using namespace std; inline void read(int &x) { char ch; bool flag = false; for (ch = getc原创 2017-08-05 22:07:05 · 259 阅读 · 0 评论 -
2017 ACM-ICPC 亚洲区(西安赛区)网络赛 Xor
原题链接:https://nanti.jisuanke.com/t/17120 题目大意:给出一颗n个点的带点权的树,问从a到b的最短路径上第k*p个点的异或和是多少。(n) 先吐槽一下,可能我是中了一种叫做赛后1min过题的诅咒QAQ。 这题的大概思路是,先用树链剖分预处理一下,再在求lca 的时候求异或和。对于k小于200的点,可以有足够的时间和空间来预处理以k为间距的前缀异或和,k大于原创 2017-09-16 17:22:30 · 1033 阅读 · 0 评论
分享