
分块
Fuko_Ibuki
Eclipse first, the rest nowhere. 已从ACM领域退出,这个账号不会再发题解了。
展开
-
LibreOJ 6277,6278,6280 数列分块入门1,2,4 树状数组,分块,线段树等.
分块1 分块2 分块4 模板一共有九个.我试着在三天内做了3个. 应该不用超链接吧. 分块1 区间加,单点询问. 这不是裸的改版树状数组吗?用树状数组处理前缀和水过. #include<bits/stdc++.h> namespace chtholly{ typedef long long ll; #define re0 register int #define...原创 2018-04-06 08:42:30 · 29458 阅读 · 0 评论 -
LibreOJ 6279,6281,6283 数列分块入门3,5,7 树状数组,分块,线段树等.
分块3 分块5 分块7 我又做了3个. 分块3 区间加,区间求某个数x的前驱(小于x的数中最大的一个).没有输出-1. 我还以为所有的数真的会小于0.吓死我了. /* 一样的方法. 对于l,r所在的块,暴力修改重构. 对于中间的块,lazy数组标记一下. 询问的时候暴力枚举两边,中间二分求前驱,取出这些数中最大的一个. 代码与分块2相差不大. */ #include&...原创 2018-04-07 11:50:50 · 32186 阅读 · 0 评论 -
LibreOJ 6282,6284,6285 数列分块入门6,8,9 树状数组,分块,线段树等.
分块6 分块8 分块9 终于结尾了. 诶?我定义的常量变成yuzu了?我不要可怜了? 可怜有剧毒!我再用可怜我要爆零了. 好吧其实是因为我研究了橘学.这里我推荐一下Citrus. 分块6 支持插入一个数,询问一个位置上的数是多少. /* 每块开一个vector,插入的时候先询问x指向的块和位置,然后插入就可以了; 询问的时候从第一个vector开始按顺序减去每一块的元...原创 2018-04-13 13:08:07 · 12848 阅读 · 0 评论