推式子,当取 k 时,结果为 (n-k)a+\sum_{i=b-k+1}^bi,等差数列求和并合并同类项,整理为 {res}=-\frac12k^2+(b-a
+\frac12)k+an,是 {res} 关于 k 的二次函数,当 k=b-a+\frac12 时取到最大值。由于 k 为整数,同时值域为 [0,min(n,b)],取最接近对称轴的整数即可。
C. Manhattan Permutations
由于 p 是一个排列,如果由 i 向 p_i 连边,每个点的出度和入度都为 1,得到的一定为若干个环。考虑构造使得每个环中只有一个 i 满足 p_i\le i,因为如果有两个这样的 i,直接将其中一个拆出来答案不变,所以这样一定包含了所有方案。
考虑每个环对曼哈顿值的贡献,由于只有一个 p_i\le i 的 i,所以整个环的贡献就是 2(\max(i)-min(i)),因此最终值也一定是偶数。所以这里把 k 直接除掉了 2,只考虑一边的贡献。