![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
线段树
wlhz2017
这个作者很懒,什么都没留下…
展开
-
Codeforces Global Round 23 F CF1746F Kazaee
正整数数组n 单点更新 区间查询 区间内的数的按数位分离 每种正整数的个数是不是都是k的倍数 比如1234 23 两个数 算作 一个1 两个2 两个3 一个4维护9个树状数组 分别更新1~9的数目原创 2022-10-28 10:09:44 · 202 阅读 · 0 评论 -
HDU 5172 GTY's gay friends
题意:首先给一个长度为n的数组,m次询问,每次询问该区间内的数是否是一个排列(从一开始)判断一个区间内的数是否是排列 可以分成两部分考虑 首先看区间内的和是否等于前n项和,然后看区间内的数是否没有重复 两项都满足 那么就是排列对于区间内的求和 可以通过前缀和来处理 后面区间判断是否有重复可以用线段树来判断(RMQ会超内存)线段树的每一位记录 原数组中这位上的数上一次出现的位置 每次查询区间原创 2015-09-13 17:39:25 · 297 阅读 · 0 评论 -
HDU 5726/2016多校1D GCD
题意:给n个数,每次询问求一个区间的gcd值与这个区间gcd值相同的区间个数题解:因为最大值1e9 所以gcd种类数也只有log(1e9)种,所以预处理区间gcd时 可以处理以当前点为右端点 每个区间的gcd,应该分成小于log(1e9)段,转移到下一个端点时,只要将每一段都与下一个端点的值取gcd即可,再将相同的段合并。将每一段的值都叠加到map上,最后线段树查询区间gcd,再map查询个数原创 2016-07-30 10:16:45 · 385 阅读 · 0 评论