11.15考试

T1
树剖+线段树;
线段树取模维护两个值,最大值和区间和;
T2
容斥原理;
设x的质因数集合为{2,3,4};
{s} 表示有因数s的数的个数;
那么,与x互质的数为{1}-{2}-{3}-{4}+{2,3}+{2,4}+{3,4}-{2,3,4};
T3
$f[i] = displaystylesum_{j = 0}^{i}{f[j]+iover{i+1}} $

先提出一个 (f[i]+i) 来,变成:

(f[i] = displaystyle {f[i] + i over i+1} sum_{j = 0}^{i-1}{f[j] + iover{i+1}})

有点难看,先把所有的 $f[i] $ 都移到一边变成:

({iover i+1} f[i] = {iover {i+1}} + displaystyle sum_{j = 0}^{i-1}{f[j] + iover{i+1}})

两边同时乘以 (i+1) 可得:

(if[i] = i + displaystylesum_{j=0}^{i-1} f[j] + i)

在把里面求和中的 (i) 提出来可以变成:

(if[i] = i(i+1) + displaystylesum_{j=0}^{i-1} f[j])

发现不好在继续化简了,这时候我们需要用到一个小技巧,作式相减法。

(i-1) 带入原式可得:

((i-1) f[i-1] = i(i-1) displaystylesum_{j=0}^{i-2} f[j])

把这两个式子相减可得:

(if[i] - (i-1)f[i-1] = i(i+1)- i(i-1) + f[i-1])

继续化简可得:

(if[i] - if[i-1] = 2i)

所以: (f[i] - f[i-1] = 2)

综上 (f[i] = 2i)

原文地址:https://www.cnblogs.com/Aswert/p/13992241.html