数据结构-树状数组
All_fade_away
这个作者很懒,什么都没留下…
展开
-
CF594D. REQ
CF594D. REQ Solution 离线询问,按左端点排序。 对于每个质因数都会有p−1p\frac{p-1}{p}pp−1的贡献,考虑把贡献维护在当前左端点右边最早出现的ppp倍数的位置上。 每次lll增加的时候,把这一位变成1,并把这一位的质因数的贡献往它之后的位置推,对于每组询问求前缀积,树状数组维护即可。 #include <vector> #include <list> #include <map> #include <set> #inclu原创 2020-09-04 19:16:12 · 119 阅读 · 0 评论 -
CF848C Goodbye Souvenir
CF848C Goodbye Souvenir 题目描述 Solution 考虑拆贡献,把最后一次的下标减去第一次的下标的和拆成每一个点与和它数字相同的上一个点的差的和,也就是∑i−pre[i]\sum i-pre[i]∑i−pre[i]。 这样转化之后,每一次询问一个区间[l,r][l,r][l,r],相当于找到所有满足条件的iii,使得l≤i≤rl\leq i \leq rl≤i≤r,且pre...原创 2020-02-02 16:17:17 · 411 阅读 · 1 评论 -
P4396 [AHOI2013]作业
P4396 [AHOI2013]作业 题目描述 详见:P4396[AHOI2013]作业 solution 莫队+树状数组的裸题(莫队+分块,CDQ分治都可以,莫队+线段树大概需要卡常)。 时间复杂度 Code #include<bits/stdc++.h> using namespace std; const int MAXN=2e5+50; inline...原创 2019-08-19 11:02:40 · 108 阅读 · 0 评论