摘要: 一眼又是个莫队…… 首先看这时间/空间复杂度,线段树/主席树就别想了…… 然后么……zcy就有点傻了…… 于是zcy看了下hzwer,感觉受教育了。 分块的调块大小真是玄学设计。 有没有一种方法在修改上能够比线段树更快,同时又能相比暴力较快地回答询问呢? 我们可以用分块,把序列分成$nsqrt(n) 阅读全文
posted @ 2017-05-12 23:34 zcysky 阅读(363) 评论(0) 推荐(0)
摘要: 首先允许离线,一眼莫队…… 然后考虑对于每次移动,这不就是让你求逆序对嘛(QAQ) 考虑怎么移动? 那么每次移动的时候我拿树状数组查询一下就好,注意要离散化。 1 #include<bits/stdc++.h> 2 #define N 50005 3 #define inf 1000000007 4 阅读全文
posted @ 2017-05-12 21:24 zcysky 阅读(412) 评论(0) 推荐(0)
摘要: 我以为树分块什么的必有高论,结果居然是个暴力…… 方法也很简单,我看下每个节点dfs的时候是否已经大于k个,大于的话我就新开一块。 注意dfs的时候当前节点不能放进子树的块中。 阅读全文
posted @ 2017-05-12 14:51 zcysky 阅读(239) 评论(0) 推荐(0)
摘要: 追yql做题记录的时候做到的……一道Splay模版题…… 啊LCT写久了都有点忘了Splay了(什么奇怪的逻辑?) 其实说白了五个操作: 1、 将某元素置顶:将元素旋到根,然后将左子树合并到该元素的后继 2、 将某元素置底:将元素旋到根,然后将右子树合并到该元素的前驱 3、 将某元素提前/滞后1位: 阅读全文
posted @ 2017-05-12 09:26 zcysky 阅读(162) 评论(0) 推荐(0)