rt,题意是一条数轴上 nnn 个点分别在 [1,n][1,n][1,n] 的位置,要求选出一个集合 S={x∣x∈[1,n]}S=\{x|x\in[1,n]\}S={x∣x∈[1,n]},求 min∑i=2n−1minj∈S(∣i−j∣)min\sum_{i=2}^{n-1}\min\limits_{j\in S}(|i-j|)min∑i=2n−1j∈Smin(∣i−j∣)。n≤109n\leq 10^9n≤109。
这东西(好像)明显是三分,但是不会,所以考场上打了个数论分块。当时不觉得是对的,但是 A 了。
具体就是枚举 SSS 的大小,显然 ∀i∈S\forall i\in S∀i∈S,使得 ∣i−j∣|i-j|∣i−j∣ 对答案产生贡献的 jjj 的数量要尽可能接近。发现 ∀i\forall i∀i,jjj 的数量为 ni\frac niin 或 ni+1\frac ni+1in+1,对这个数论分块,取每块两个端点更新答案。
求有没有严谨的证明。