IMO 1977 第 2 题探析
原题:在一个有限的实数数列中,任意 7 个连续项之和为负数,且任意 11 个连续项之和为正数。求这个数列最多有多少项。
解法一:记这个数列为 a1, a2, ..., ak,问题等价于求 k 的最大值,记为 g。假设 g ≥ 7 + 11 - 1 = 17,考察如下的一组序列:
a1 a2 ... a11
a2 a3 ... a12
...
a7 a8 ... a17
这组序列排成一个 7×11 矩阵 A。由题设知,A 的每一行各数之和为正数,所以 A 中各数之和为正数;而 A 的每一列各数之和为负数,所以A 中各数之和为负数,矛盾。这说明 g ≤ 16。
另一方面,可以构造 16 项数列 5, 5, -13, 5, 5, 5, -13, 5, 5, -13, 5, 5, 5, -13, 5, 5 满足题设要求。所以 g = 16,即这个数列最多有 16 项。
说明1:从国内的资料看到解法一便是当年英国参赛选手 John Rickard 给出的解法。他因为这个巧妙解法还获得了特别奖。这里补充一下具体构造满足题设要求的 16 项数列的一个简便方法:
令该数列以前 7 项为一个循环段,则其 16 项可记为 a1, a2, ..., a7, a1, a2, ..., a7, a1, a2,这样可以确保其中任意 7 个连续项之和都相等。
再令该 16 项数列中,任意 7 个连续项之和为 -1,且任意 11 个连续项之和为 1。于是有
a1 + a2 + ... + a7 = -1
a1 + a2 + a3 + a4 = 1 - (-1) = 2
a2 + a3 + a4 + a5 = 2
a3 + a4 + a5 + a6 = 2
a4 + a5 + a6 + a7 = 2
a5 + a6 + a7 + a1 = 2
a6 + a7 + a1 + a2 = 2
进一步有 a5 = a1, a6 = a2, a7 = a3, a1 = a4, a6 = a4,可解出:
a1 = a2 = a4 = 5,a3 = -13,于是便得到一个满足题设要求的 16 项数列:
5, 5, -13, 5, 5, 5, -13, 5, 5, -13, 5, 5, 5, -13, 5, 5
在 https://math.stackexchange.com/questions/3008035/smallest-size-of-set-of-real-numbers-such-that-the-sum-of-any-seven-is-strictly/ 上看到一个网名为 Dr. Mathva 的人贴出了上述的解法一,以及如下所示的一个通用解法:
解法二:
in the book "The IMO compendium" the authors offer the following solution generalizing the problem
We shall prove a stronger statement: If 7 and 11 in the question are replaced by any positive integers m, n, then the maximum number of terms is m+ n − (m, n) − 1.
Let a1, a2, ..., al be a sequence of real numbers, and let us define s0 = 0 and sk = a1 + ... + ak (k = 1, ..., l). The given conditions are equivalent to sk > sk+m for 0 ≤ k ≤ l − m and sk < sk+n for 0 ≤ k ≤ l − n.
Let d = (m, n) and m = m'd, n = n'd. Suppose that there exists a sequence (ak) of length greater than or equal to l = m+ n − d satisfying the required conditions. Then the m' + n' numbers s0, sd, . . . , s(m'+n'−1)d satisfy n' inequalities sk+m < sk and m' inequalities sk < sk+n. Moreover, each term skd appears twice in these inequalities: once on the left-hand and once on the right-hand side. It follows that there exists a ring of inequalities si1 < si2 < ... < sik < si1 , giving a contradiction.
On the other hand, suppose that such a ring of inequalities can be made also for l = m + n − d − 1, say si1 < si2 < ... < sik < si1. If there are p inequalities of the form ak+m < ak and q inequalities of the form ak+n > ak in the ring, then qn = rm, which implies m' | q, n' | p and thus k = p + q ≥ m' + n'. But since all i1, i2, ... , ik are congruent modulo d, we have k ≤ m' + n' − 1, a contradiction. Hence there exists a sequence of length m + n − d − 1 with the required property.
而按照 Dr. Mathva 的说法,这个解法二才是 John Rickard 的解法——This second solution was offered in the IMO by John Rickard, from the UK, who received a special price for such an original approach.
具体看一下这个通用解法。用正整数 m 和 n 替换原题中的 7 和 11,若 m = n,按通用解法给出的通用最大项数为 g = m + n - (m,n) - 1 = m - 1【为清晰起见,这里用字母 g 取代通用解法里使用的 l】,即总项数为 m - 1,这时任意 m - 1个实数构成的数列都认为是满足题设要求的,但实际情形是根本不存在题设所言的实数数列满足任意连续 m 项之和同时为正数和负数,在这样的前提下谈论这个数列最大项数是没有意义的。
其它的情形,不妨令 m < n,若 m | n,按通用解法给出的通用最大项数为 g = m + n - (m,n) - 1 = n - 1,这时任意 n - 1个负实数构成的数列都认为是满足题设要求的,但实际情形是根本不存在题设所言的实数数列满足任意连续 m 项之和为负数且任意连续 n 项之和为正数,在这样的前提下谈论这个数列最大项数也是没有意义的。
以下就 m < n 且 m ≠ (m,n) 的情形对上述通用解法进行分析。
第二段引入 sk = a1 + a2 + ... + ak, (1 ≤ k ≤ g) 和 s0 = 0,并由题设得到
sk > sk+m, (0 ≤ k ≤ g - m)
sk < sk+n, (0 ≤ k ≤ g - n)
都是很好懂的。但第三段的内容则显得比较晦涩。以下取 m = 6 且 n = 10 为例具体看一下这一段:
Let d = (m, n) and m = m'd, n = n'd.
即 d = (m, n) = (6, 10) = 2,m' = 3,n' = 5;此时 m' + n' - 1 = 7
Suppose that there exists a sequence (ak) of length greater than or equal to g = m+ n − d satisfying the required conditions. Then the m' + n' numbers s0, sd, . . . , s(m'+n'−1)d satisfy n' inequalities sk+m < sk and m' inequalities sk < sk+n.
这一句是说,假设数列 a1, a2, ..., ah,h ≥ g = m + n - d = 14,满足题设要求,那么 s0, s2, s4, . . . , s14 这 8 个数会满足以下两组不等式(左侧一组 5 个,右侧一组 3 个,共 8 个不等式):
s6 < s0 s0 < s10
s8 < s2 s2 < s12
s10 < s4 s4 < s14
s12 < s6
s14 < s8
Moreover, each term skd appears twice in these inequalities: once on the left-hand and once on the right-hand side. It follows that there exists a ring of inequalities si1 < si2 < · · · < sik < si1 , giving a contradiction.
这两句是说,s0, s2, s4, . . . , s14 这 8 个数中的每个数都在 8 个 x < y 型的不等式中的左端和右端各出现一次,于是可推出这 8 个数中一定存在 si1 < si2 < · · · < sik < si1 这样的环路关系,导致一个数小于它自身的矛盾。这是因为,按假设的条件,每个数都不是最大的(也不是最小的)。
至此,第三段的逻辑已经很清楚了。接着看第四段:
On the other hand, suppose that such a ring of inequalities can be made also for g = m + n − d − 1, say si1 < si2 < · · · < sik < si1. If there are p inequalities of the form ak+m < ak and q inequalities of the form ak+n > ak in the ring, then qn = rm, which implies m' | q, n' | p and thus k = p + q ≥ m' + n'.
这几句(如标红部分所示,这里有几处笔误,a 应该是 s,r 应该是 p)是说,假设 g = m + n - d - 1 的情形也会出现 si1 < si2 < · · · < sik < si1 这样的环路关系,这个环路中有 k 个 x < y 型不等式。若这 k 个不等式中,p 个来自 sk+m < sk,q 个来自 sk < sk+n,则有 qn = pm,由此有 m' | q 和 n' | p,因此 k = p + q ≥ m' + n'。
解释一下 qn = pm 的由来:环路中有 k 个 x < y 型不等式,从 i1 开始,做了 p 次减 m 操作和 q 次加 n 操作后又回到了 i1,即有 i1 - pm + qn = i1,于是有 qn = pm。随后的结论很直观了。
But since all i1, i2, . . . , ik are congruent modulo d, we have k ≤ m' + n' − 1, a contradiction. Hence there exists a sequence of length m + n − d − 1 with the required property.
这两句是说,由 i1 ≡ i2 ≡ ... ≡ ik (mod d),就有 k ≤ m' + n' − 1,这与 k ≥ m' + n' 构成冲突。因而,满足题设要求的长度为 m + n − d − 1 的数列是存在的。
i1, i2, . . . , ik 模 d 同余是显然的,因为从 i1 到 ik 的逐次变换都是减 m 或加 n,而 d = (m,n)。又因为 i1, i2, . . . , ik 取值都是 [0, m + n - d -1] 范围内的整数,两两不同且模 d 同余,而在 0, 1, ..., m + n - d -1 这 m + n - d 个整数中 模 d 同余的数最多为 (m + n - d) / d = m' + n' − 1 个,即有 k ≤ m' + n' − 1。与 k ≥ m' + n' 矛盾,这说明当 g = m + n − d − 1 时,s0, s1, ..., sg 中不存在 x < y 型环。于是就认定存在数列 a0, a1, ..., ag 满足题设要求。这是通用解法中最为奇特的部分了,即免除了构造一个具体的满足题设要求的数列的环节。
这里不做由 s0, s1, ..., sg 中不存在 x < y 型环,到存在数列 a0, a1, ..., ag 满足题设要求的严格证明。仅以 m = 6 和 n = 10 为例,来实际构造一个满足题设要求的数列 a0, a1, ..., ag 实例:
这时,g = m + n - d - 1 = 13,出自 sk+m < sk 的全体不等式(共计有 m + n - d - 1 - m + 1 = n - d = 8 个)为:
s6 < s0,s7 < s1,s8 < s2,s9 < s3,s10 < s4,s11 < s5,s12 < s6,s13 < s7
出自 sk < sk+n 的全体不等式(共计有 m + n - d - 1 - n + 1 = m - d = 4 个)为:
s0 < s10,s1 < s11,s2 < s12,s3 < s13
据此试图排出 s0, s1, ..., s13 从小到大的顺序,得到:
s8 < s2 < s12 < s6 < s0 < s10 < s4
s9 < s3 < s13 < s7 < s1 < s11 < s5
s0 = 0,不妨令 s6 = -1,s10 = 1,s12 = -2,s4 = 2,s2 = -3,s8 = -4
同样,不妨令 s1 = 0,s7 = -1,s11 = 1,s13 = -2,s5 = 2,s3 = -3,s9 = -4
由 ai = si - si-1,可得
(a1, a2, ..., a13) = (0, -3, 0, 5, 0, -3, 0, -3, 0, 5, 0, -3, 0)
这便是 m = 6, n = 10 时,满足题设要求的最大项数为 13 的一个数列实例。
由上面的分析过程可知,原题扩展到一般情形后还可以进一步限定是整数数列,其结论依然成立。
说明2:上面的解法一和解法二存在一定的关联性。回顾解法一里那个 7×11 矩阵
a1 a2 ... a11
a2 a3 ... a12
...
a7 a8 ... a17
对矩阵的第 i 行求和,得到:
si+10 - si-1 > 0, i = 1,2,...,7
对矩阵的第 j 列求和,得到:
sj+6 - sj-1 < 0, j = 1,2,...,11
矩阵的各行求和相加,记为 sr,得到:
sr = (s11 + s12 + ... +s17) - (s0 + s1 + ... + s6) > 0
矩阵的各列求和相加,记为 sc,得到:
sc = (s7 + s12 + ... +s17) - (s0 + s1 + ... + s11) < 0
由 (s0 + s1 + ... + s6) + (s7 + s12 + ... +s17) = (s0 + s1 + ... + s11) + (s11 + s12 + ... +s17)
可知,sr = sc,这样就连通到了解法一的思路。但是解法一里的矩阵表示法确实是非常直观的,这种直观性明显优于解法二。
我们甚至可以说,对于证明一般情形下的必要性结论,即 g ≤ m + n - (m, n) - 1,解法一在直观性上也是优于解法二的。以上面分析解法二引入的 m = 6, n = 10 的特殊情形来具体看一下用解法一的思路如何求解:
拓展题:在一个有限的整数数列中,任意 6 个连续项之和为负数,且任意 10 个连续项之和为正数。求这个数列最多有多少项。
分析:若直接套用前述的解法一,给出如下的矩阵:
a1 a2 ... a10
a2 a3 ... a11
...
a6 a7 ... a15
只能得到 g ≤ 6 + 10 - 1 - 1 = 14,若接着试图去构造一个满足题设要求的 a1, a2, ..., a14 数列实例就会碰壁了。事实上,前述的解法一之所以对原题起作用是因为 (m, n) = (7, 11) = 1。因此拓展题需要对前述的解法一加以改进,即要把 (m, n) 考虑进去。
由于d = (m, n) = (6, 10) = 2,把数列 a1, a2, ..., a2k 的项从左至右两个一组结对求和,可得到一个新数列 b1, b2, ..., bk,其中 bi = a2i-1 + a2i, i=1,2,...,k
若数列 a1, a2, ..., a2k 中任意连续 m = 6 项之和为负数,且任意连续 n = 10 项之和为正数,则在数列 b1, b2, ..., bk 满足:任意连续 m/d = 3 项之和为负数,且任意连续 n/d = 5 项之和为正数。考察如下的 3×5 矩阵 B
b1 b2 ... b5
b2 b3 ... b6
b3 b4 ... b7
对每行求和,可得 B 中各数之和为正数;而对每列求和,可得 B 中各数之和为负数,矛盾。因此为使得数列 a1, a2, ..., a2k 满足题设要求,k 必须小于等于 m/d + n/d - 1 = 7,于是有 g ≤ d(m/d + n/d - 1) - 1 = m + n - d - 1 = 13。再用前面 说明1 里的方法很容易实际构造出满足题设要求的项数为 13 的数列实例:
(a1, a2, ..., a13) = (0, -3, 0, 5, 0, -3, 0, -3, 0, 5, 0, -3, 0)
因此 g = 13。
说明3:对于一般情形的结论,即正整数 m 和 n 满足 m < n 且 m ≠ (m, n) 时,满足任意 m 项之和为负数,且任意 n 项之和为正数的整数队列 a1, a2, ..., ak 的最大项数为 g = m + n - (m, n) - 1。由上面的改进的解法一可以很直观地推导出 g ≤ m + n - (m, n) - 1 这个必要性的结论,但是进一步通过构造可行数列来证明 g = m + n - (m, n) - 1 就非常困难了。对比之下,解法二的做法是极其巧妙和高明的,它不是通过构造可行实例来证明结论,而是证明项数为 g = m + n - (m, n) - 1 的可行实例一定存在。
当给定 m 和 n 具体的取值时,如前面分析所示,用解法一和解法二都可以很容易地构造出具体的满足题设要求的数列实例。但就一般情形而言,构造一个项数为 g = m + n - (m, n) - 1 的满足题设要求的通用数列实例应该是非常困难的(甚至是不可能的)。
附言:
为搞清楚当年 John Rickard 提供的解答到底是解法一还是解法二,在网上又进一步查了一些资料。
在 https://artofproblemsolving.com/community/c6h61033p369641 上看到 enescu 贴出的当年捷克选手 Martin Čadek 的一个解法:
Let be the given sequence and let .
The conditions from the hypothesis can be now written as and for all .
We then have:
a contradiction. Therefore, the sequence cannot have terms.
In order to show that is the answer, just take 16 real numbers satisfying
.
We have and for . Thus we found all sequences with the given properties.
不难看出,这是前述解法二针对 m = 7, n = 11 的表述,应对原题是没有问题的,Martin Čadek 也确实因为这个解法得到了特别奖(详见 https://www.imo-official.org/team_r.aspx?code=CZS&year=1977)
另外,pbornsztein 指出:
More generally, it can be shown that :
If are any two distinct positive integers such that none of them divides the other, and if a sequence has the property that the sum of any consecutive terms is always positive and the sum of any consecutive terms is negative then the maximal length of this sequence is where
The proof I know is quite long, so that I will not write it here. It can be found in :
Quadrature, n°54 (Oct. Dec. 2004), ex. E-218, p.34-36.
enescu 的回应如下:
Well, this was proved during the competition by GB7, John Rickard, a gold medalist in 1977!
综合查到的资料看,John Rickard 当年的解答应该就是前述的解法二,即通用解法。而解法一,依我看,很可能是出题组提供的官方解法。