ABC 256
写在前面
越来越菜了
E
一个显然的思路,考虑在 \(v\) 在 \(u\) 前会产生贡献时连一条 \(u \to v\) 的有向边。
-
当且仅当形成环时,一定会产生贡献,题上说取最小,故我们在这个环上找到最小的不满值,累加入答案。
-
当未形成环时,总有一种方式不会产生贡献。
F
来补赛时没写出来的锅了
\(B_x=\sum_{i=1}^x A_i\)
对于每一个 \(A_i\) ,只有在 \(i\) 后才会对答案产生贡献。
所以 \(A_i\) 对 \(C_x\) 有贡献,当且仅当 \(x \in [i,n]\),每次贡献 \(1\) , \(C_x=\sum_{i=1}^x(x-i+1) A_i\)
所以 \(A_i\) 对 \(D_x\) 有贡献,当且仅当 \(x \in [i,n]\) ,每次贡献 \(x-i+1\), 运用等差数列求和公式可得 \(D_x=\sum_{i=1}^x \frac {(x-i+1)\cdot(x-i+2)} {2} \cdot A_i\)
将式子展开成九项在合并同类项可得 \(D_x=\frac 1 2 \sum_{i=1}^x[x^2+(3-2i)x+(i-1)(i-2)]A_i\)
进一步化简 \(D_x=\frac 1 2 [\sum_{i=1}^x x^2 A_i+\sum_{i=1}^x (3-2i)A_i+\sum_{i=1}^x(i-1)(i-2)A_i]\)
对于这个式子需要维护的是中括号里的三个和式,用树状数组可以做到 \(log~n\) ,总复杂度 \(q~log~n\) 。

浙公网安备 33010602011771号