随笔分类 -  分治—整体二分

摘要:整体二分: 对于每一个修改操作,标记为1,并且加一个标记为 1的这个位置原来值,并且对于a数列每个点都当成修改操作 然后整体二分,扫当前操作区间lr,把在值域区间标记为1和 1的操作都在树状数组对应位置上加/减出来,然后询问操作根据k和询问答案大小决定放在哪部分传下去 cpp include inc 阅读全文
posted @ 2019-04-22 10:27 lokiii 阅读(173) 评论(0) 推荐(0)
摘要:脑子一抽开始写主席树,敲了一会发现不对…… 整体二分,用二维树状数组维护值为当前区间的格子个数,然后根据k的大小和当前询问的子矩阵里的值和k的大小关系来决定这个询问放在哪一部分向下递归 cpp include include include using namespace std; const in 阅读全文
posted @ 2019-04-22 08:01 lokiii 阅读(166) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-01-16 10:32 lokiii 阅读(9) 评论(0) 推荐(0)
该文被密码保护。
posted @ 2019-01-10 22:02 lokiii 阅读(6) 评论(0) 推荐(0)
摘要:树套树: 约等于是个暴力了。以区间线段树的方式开一棵权值线段树,在权值线段树的每一个点上以动态开点的方式开一棵区间线段树。 结果非常惨烈(时限20s) cpp include include include include include using namespace std; const int 阅读全文
posted @ 2017-12-27 19:54 lokiii 阅读(161) 评论(0) 推荐(0)