分块
chenxiaoran666
人要有梦想,不然和咸鱼有什么区别!
展开
-
【BZOJ2002】[HNOI2010] 弹飞绵羊(大力分块)
点此看题面大致题意:有nnn个弹力装置,当到达第iii个装置时,会被弹到第i+kii+kii+k_i个装置,若不存在第i+kii+kii+k_i个装置,就会被弹飞。有两种操作,一种操作是将kxkxk_x改为yyy,另一种操作是询问从xxx出发被弹几次后会被弹飞。考虑分块这题可以用分块来做。我们可以将弹力装置进行分块,对于每一块的弹力装置,可以先预处理出每个弹力元素弹出这个块...原创 2018-08-31 11:07:31 · 155 阅读 · 0 评论 -
【洛谷3396】哈希冲突(大力分块)
点此看题面大致题意:给你一个长度为nnn的数组valvalval以及mmm个操作,操作有两种:一种是将valxvalxval_x修改为yyy,另一种操作是求出∑vali(i∑vali(i\sum val_i(i%x=y)x=y)x=y)。朴素的暴力我们先来写一个朴素的暴力,代码如下:int main(){ register int i,Q,x,y,ans;regi...原创 2018-09-11 13:05:09 · 343 阅读 · 0 评论 -
【洛谷2801】教主的魔法(分块经典入门题)
点此看题面大致题意:给你一个序列,要你支持两种操作:第一种是区间加法,第二种是查询区间内大于等于xxx的数的个数。考虑分块这应该是一道比较经典的分块入门题吧。首先,我们将序列分块。对于修改操作,暴力修改两边的不完整的块,中间的块直接打标记记录即可。对于询问操作,暴力求出两边的不完整的块的答案,中间的块我们可以在块内二分,最后将全部答案加起来即可。代码...原创 2018-09-16 14:11:08 · 337 阅读 · 0 评论