组合极值/组合构造问题 `kongyuqing|20171024`

2017/10/25 posted in  解题

100 个数围成一圈, \(a_{3} > a_{2} + a_{1}\), \(a_{4} > a_{3} + a_{2}\), \(\dots\) , \(a_{100} > a_{99} + a_{98}\), \(a_{1} > a_{100} + a_{99}\), \(a_{2} > a_{1} + a_{100}\), 问其中最多有多少个正数?

Qer: kongyuqing 20171024

分析和解答

图中题干里的“整数”一词其实没有必要, 可能有一点点提示作用吧.

这个题可以由简单情况逐渐推广而来,即先考虑一下 4 个数, 6 个数, 8 个数的情形, 总结一下规律.

4 个数的情形比较好构造, 6 个和 8 个的情形稍微麻烦一点, 但最终应该也能构造出来. 下面给出一组精心设计的例子1.

  • 4 个数: \(-8, 1, -6, -4\)
  • 6 个数: \(-12, 1, -10, 1, -8, -6\)
  • 8 个数: \(-16, 1, -14, 1, -12, 1, -10, -8\)

有了这些例子以后, 就能够总结出这样一个规律:

\(2n\) 个数按照题述不等式规则围成一圈, 里面可以包含 \(n-1\) 个正数.

对于 100 个数来说, 可以构造出下面这个数列, 其中包含 49 个正数.

\[
\begin{array}{|c|c|c|c|c|c|c|c|c|c|}
\hline
1 & 2 & 3 & 4 & 5 & 6 & \dots & 98 & 99 & 100 \\
\hline
-200 & 1 & -198 & 1 & -196 & 1 & \dots & 1 & -102 & -100 \\
\hline
\end{array}
\]

那么, 里面是否有可能包含 50 个正数呢? 在构造的过程中, 你可能已经发现了下面这些规律.

  1. 这个数列中的所有项之和必须为负.

    将题设的所有不等式条件累加可得 \(\displaystyle \sum a_i > 2 \cdot \sum a_i \), 因此必有 \(\displaystyle \sum a_i < 0\).

  2. 进一步, 数列中的所有奇数项之和必须为负, 所有偶数项之和也是.

    将题设的所有偶数项的不等式条件累加可得 \(\displaystyle \sum_{i = 2,4,6,\dots} a_i > \sum_{i = 1,2,3,\dots} a_i \), 因此 \(\displaystyle \sum_{i = 1,3,5,\dots} a_i < 0\). 同理不难证明 \(\displaystyle \sum_{i = 2,4,6,\dots} a_i < 0\).

  3. 数列中, 不能有连续两项为正. 否则, 它们的下一项必须是正的 (因为大于两个正数之和), 以此类推, 下下一项, 再下一项, … 也都必须是正的, 那么数列中的所有项都必须是正的, 与上面的结论矛盾.

综合上面的结论, 可以断言, 对于 100 个数的情况, 正数必须少于 50 个2.

综上, 我们证明了:

  • 100 个数中可以包含 49 个正数 (\(2n\) 个数中可以包含 \(n-1\) 个正数);
  • 100 个数中不能包含 50 或更多正数 (\(2n\) 个数中不能包含大于等于 \(n\) 个正数).

因此, 所求的最大正数个数就是 49.


  1. 可能需要总结很久才能得到这么整的例子, 但构造出跟它们等价的, 数字看上去不是那么好的例子应该不是很难的事情. 

  2. 否则要么有两个正数相邻, 要么所有正数正好相间分布, 导致所有奇数项 (或偶数项) 全为正.