
数据结构——分块
手可摘星辰!!
这个作者很懒,什么都没留下…
展开
-
蒲公英——分块
分块基本描述一个数列进行操作是O(mn)O(mn)的,那么每n−−√n个分成一段,共分成n−−√n段,然后我们操作时,对于在一段内的直接单点暴力修改,跨段部分按段转移,这样每次操作复杂度就降成了O(n−−√)O(n)。非常简单的思想,糟心的是如何实现。建块首先我们先求出块的数目bct = (int)sqrt(n)然后用block数组记录某一个元素在第几块,实现:block[i] = (...原创 2019-08-14 15:20:20 · 297 阅读 · 0 评论 -
磁力块——分块
题目大意有 N 块磁石。一个人手中的石头可以通过磁力吸引地上的其它石头,而地上的石头不会互相吸引。人自己的坐标设为(x0,y0)(x0,y0)。地上第 i 块石头的坐标为 (xi,yi)(xi,yi),质量为 mi,磁力为 pi,吸引半 径为 ri。人站在 (x0,y0)(x0,y0) 原地不动,不断地从已经获得的石头中拿起一块, 去吸引其它石头。若一块石头的“质量,与人的距离”分别不大于“人...原创 2019-08-16 14:25:47 · 532 阅读 · 1 评论 -
小Z的袜子——分块,普通莫队
题目引入https://ac.nowcoder.com/acm/contest/1034/C思路:我们要查询的区间范围为[l,r],设这个区间的长度为n,假设袜子是选取完后,又放回的,也就是说一只袜子可以选取两次,那么表示概率的分母就可以表示为:nn,设这个区间里这种颜色的袜子的总数为sum,选取到这只袜子的概率就为sumsum/n*n。当然这不符合题目所要求的,但是我们可以用这种比较简单...原创 2019-08-16 16:29:30 · 136 阅读 · 0 评论