[vp]ARC068

提交记录

(A.)来回翻(5),(6)是最优的
(B.)(a_x)(x)值出现的次数,那么(ans=sum[a_x>0]-[sum (a_x-1) = 1~(mod~2)])
(C.)
(法1).对于一个数(d),区间长度(ge d)都包含(d)的倍数,
(<d)的最多包含一个。我们按区间长度排序。
枚举(d),然后用个指针向右走指向(<d)的最大的区间。
然后对扫过的所有区间实行一个区间加,然后枚举(d)的倍数单点查即可。
这个可以差分后用树状树组。

(法2.)设对于每个(d)的所有倍数从小到大形成的序列为(a_1,a_2...a_k),特别的,(a_{k+1})(n)
(f_i)为只包含(a_i)而不包含(a_1,a_2...a_{i-1})的区间个数。
那么(ans=sum_{i=1}^{k}f_i)那么其实(f_i=sum[l_k in [a_{i-1}+1,a_i],r_k in [a_i,m] ])
主席树一发即可。

(法3.)整除分块,欸嘿我菜我不会。

(D.)
毒瘤计数结论题。
窝根本不会数数,贴个luogu的题解链接跑路了。。
https://www.luogu.com.cn/problem/solution/AT2301

原文地址:https://www.cnblogs.com/Xxhdjr/p/15354198.html