Wenzhe Sheng bio photo

Wenzhe Sheng

Undergraduate researcher at Peking University, School of Earth and Space Sciences.

其实我本来是没意图以此题单独写一篇文章的,但因为简单看了一眼之后又神奇地做梦梦到我在课堂上讲这道题结果挂黑板,我便有了“宰了此题”的想法。

原题就不挂出来了,只考虑压轴一小问:

考虑一个n项数列${a_k}_{k=1}^n$, 若满足 \(\sum_{k=1}^n |a_k|-|\sum_{k=1}^n a_k|=n-1\) 且 \(|a_k|\leq \lambda, k=1,2,\ldots,n\)

对给定的正整数n, 若这样的数列存在,试求$\lambda$的最小值。

Volodymyr’s Soln:

首先建立一下对这个数列的直观认识,各项绝对值的和减去各项和的绝对值的差有n-1这么大,意味着这样的数列必定每项绝对值本身比较大,且有正有负相抵消使得和的绝对值很小,这是非常自然的。

为什么会出现$\lambda$的最小值——$\lambda$本身给每一项$ a_k $设了一个上界,如果这上界太小,比如0.0001, 那肯定做不到n-1,这是基本的认识。
所以可以先把等式条件退一步,即考虑在给定$\lambda$时,n元函数$f(a_1,a_2,\cdots,a_n)=\sum_{k=1}^n a_k - \sum_{k=1}^n a_k $能取到的最大值是什么?

化归到这个问题后后续的解答其实是自然的,难点只在于高中没法直接处理多元函数,而且这个绝对值函数有不可导点,没法直接用拉格朗日乘子法求解,因此我昨天看完题第一反应就跟小合伙人说是我我就上调整大法了,然后后续就没想下去了。

在写具体求解之前,我们先来猜一下取极值时数列的形式,建立于数列的直观认识,我们要求每一项的绝对值尽可能大,又要使得和的绝对值尽可能小,一个自然的假设就是让每一项的绝对值顶足$\lambda$,然后有若干正的$\lambda$和若干负的$\lambda$,这里的项数便自然可以设出来一个待定量$k$;

代入原等式条件便有:

\[n-1=n\lambda-|k\lambda-(n-k)\lambda|=(n-|2k-n|)\lambda\]

这里不妨设$k\leq [n/2]$(否则把整个数列取相反数即可,不影响结论), 则有: \(n-1=2k\lambda\)

即 \(\lambda=\frac{n-1}{2k}\geq \begin{cases} \frac{n-1}{n}, & n是偶数 \\ 1, & n是奇数 \end{cases}\)

其实这就是最终的答案了。如果你上来跟我思路一致写到这,也可以直接用先猜后证的方式,后续用反证法,这是自然的。

这里回到n元函数最大值问题,我想用“调整”的思路书写一下求解过程:

从猜想的极值情况数列结构可以看到,每个$ a_k $都取到了它的上界$\lambda$,对应应该是较大的$f$值,我们来说明这一点:

先固定$a_2,\cdots,a_n$, 不妨设$s=\sum_{k=2}^n a_k>0$,(否则给整个数列取相反数,结论不变),则

\[f(a_1,a_2,\cdots,a_n)=\sum_{k=1}^n |a_k|-|a_1+s|\]
这个时候,由于$a_2,\cdots,a_n$固定, 要想让$ a_1 - a_1+s $最大,显然取$a_1=-\lambda$;

要说明这件事可以用作差法:

\[f(-\lambda,a_2,\cdots,a_n)-f(a_1,a_2,\cdots,a_n)=\lambda-|a_1|+|a_1+s|-|s-\lambda|\]
显然有$\lambda\geq a_1 , a_1+s \geq s-\lambda $, 因此
\[f(-\lambda,a_2,\cdots,a_n)\geq f(a_1,a_2,\cdots,a_n)\]
由上述分析的对称性,对每一个$a_i$,要使$f$取最大,每个$ a_i $都要取到$\lambda$,正负由其他项的和决定。这里其实就把我们猜想中数列的形式证明出来了,但如果要说这是$f$的最大值其实还需要说明我们对n个变量做“累次极值”的过程得到的就是最值,这其实可以由$f$作为n元函数的连续性保证(但这涉及多元微积分)。

因此,要使得$f$取最大就对应$a_j$有若干个正的$\lambda$和若干负的$\lambda$,不妨设为k个,且Without Loss of Generality(WLOG),设$k\leq [n/2]$(否则把整个数列取相反数即可,不影响结论),则:

\[f(a_1,\cdots,a_n)\leq (n-|2k-n|)\lambda=2k\lambda\]

若n为偶数,且假设$\lambda < \frac{n-1}{n}$,则:

\[f(a_1,\cdots,a_n)<n\times \frac{n-1}{n}=n-1\]

矛盾

若n为奇数,且假设$\lambda < 1$,则:

\[f(a_1,\cdots,a_n)<(n-1)\times 1=n-1\]

矛盾

因此$\lambda$的最小值即……

调整大法还是太妙了(高中最爱),可以用非常自然的方式求得一些复杂函数的最值。


Leave a Message