Insert and Equalize

这道题目为什么赛时做了40min呢?为啥呢?我寻思着猜也能猜出来吧

主要原因:没有认真的写式子,写代码不认真,还没有认真地估计时间复杂度导致T了一次。以后要想清楚再写啊!

但是赛时还是用猜的吧,看看样例,估下时间复杂度就知道直接用gcd就好了(不然肯定TLE了)

真正的证明感觉难度都有蓝了

我们先对\(a\)进行排序(只对\([1,n]\)排序,下文的\(a_{n+1}\)都指代新加入的数,不一定是最大数),肯定不会影响答案

首先我们写出一个连等式,$$a_1+t_1x=a_2+t_2x=...=a_n+t_nx=a_{n+1}+t_{n+1}x$$

这种式子,一个很常见的技巧就是对\(x\)取模,于是$$a_1\equiv a_2\equiv ... \equiv a_n\equiv a_{n+1} \ (mod\ x)$$

作差有$$0\equiv a_2-a_1\equiv ... \equiv a_n-a_{n-1}\equiv a_{n+1}-a_n \ (mod\ x)$$

可知\(x\)一定是相邻两项差的公约数

如果我们加入的\(a_{n+1}\)是序列的最大数,那么我们让所有数都变成\(a_{n+1}\)肯定是最优的,有$$ans=\sum_{i=1}^{n}\frac{a_{n+1}-a_i}{x}=\frac{na_{n+1}-sum}{x}$$,其中\(sum=\sum_{i=1}^{n}a_i\)

如果我们加入的数不是最大数,那么最大数还是\(a_n\),答案就是$$ans=\sum_{i=1}^{n-1}\frac{a_{n}-a_i}{x}+\frac{a_n-a_{n+1}}{x}=\frac{(n+1)a_{n}-sum-a_{n+1}}{x}$$

我们再来考虑一下没有加入\(a_{n+1}\)的时候的答案,为$$ans=\frac{na_n-sum}{x}$$

显然当\(x\)为最大公约数\(d\)的时候\(ans\)最小

所以我们猜测当我们加入的数不是最大数的时候,也是\(x\)\(d\)的时候\(ans\)最小

证明:当\(x=d\)时,有\(ans≤\frac{na_n-sum}{d}+n\)(因为此时\(a_{n+1}\)一定为\(a_n+kd\),其中\(k\)为负整数;由于\(a_{n+1}\)没有出现过,当\(t_1,t_2,...,t_n\)取遍\([0,n-1]\)时,\(a_{n+1}\)的贡献就是\(n\),所以是加上\(n\));当\(x≠d\)时,\(x≤\frac{d}{2}\)(有结论:公约数一定是最大公约数的约数),则\(ans≥2\times \frac{na_n-sum}{d} +\frac{a_n-a_{n+1}}{x}\);要证\(ans≥\frac{(n+1)a_{n}-sum-a_{n+1}}{d}\),即证\(2\times \frac{na_n-sum}{d} +\frac{a_n-a_{n+1}}{x}≥\frac{na_n-sum}{d}+n\),即\(\frac{na_n-sum}{d}+\frac{a_n-a_{n+1}}{x}≥n\);由于\(x≤a_n-a_{n+1}\)(注意\(x\)是包括\(a_{n+1}\)在内的相邻两项的差,自然也就小于\(a_{n+1}\)),故\(\frac{na_n-sum}{d}+\frac{a_n-a_{n+1}}{x}≥\frac{na_n-sum}{d}+1≥\frac{n(n-1)}{2}+1\);故即证\(\frac{n(n-1)}{2}+1≥n\),当\(n≥2\)时显然成立

我们也可以证明当加入的数是最大数的时候是不会更优的,这个比较简单,就不写了

update 2024.7.14

重新做一遍这道题目,还是做出来了

看到这道题目首先从\(a_{n+1}\)下手,但是发现不太好做,然而题目除了\(a_{n+1}\)这个对象还有\(x\)这个对象,于是从\(x\)开始下手,然后不难得出上面的结论(注意结论是充要的,也就是说如果\(x\)是相邻两项差的最大公约数的约数,那么一定符合条件),然后加入的\(a_{n+1}\)一定是小于\(a_n\)的,这个稍微想一下就想出来了(注意如果\(x\)定了,\(a_{n+1}\)一定是\(a_n\)加减\(x\)的若干倍所得到的数);至于猜\(x\)\(d\),从样例入手就好了

update 2024.8.5

想出来一种比较简单的证明。首先当\(x=d\)时,所有的\(t_i\)都取到了最小值,\(x\)一旦减小,每个\(t_i\)至少加一,所以所有\(t_i\)至少增加\(n-1\),而对于\(t_{n+1}\),顶多从\(-n\)变成\(-1\),所以答案不会更劣

posted @ 2024-03-01 00:04  最爱丁珰  阅读(2)  评论(0编辑  收藏  举报