n+1個正整數,其和為2n,證所有k<2n,有子集之和為k

2008-03-25 6:47 am
S= n+1個正整數,
其和為2n,

證:

所有正整數 k < 2n,

S 有子集之和為 k

回答 (2)

2008-03-25 8:59 am
✔ 最佳答案
令 S = { A(1), A(2)...., A(n), A(n + 1) } 其中 A(i) 為正整數,i 由 1 到 n + 1
且 A(1) + A(2) + ..... + A(n) + A(n + 1) = 2n

所以 0 < A(i) < n + 1 ,即每個A(i)值大於等於 1 ,小於等於 n,其中最多只有一個最大的正整數其值為 n 。

所以 S 的子集之和可以為 1 到 2n 的任何正整數
故任何一個正整數 k < 2n,S 有子集之和為 k

2008-03-25 22:24:50 補充:
為什麼 : 0 < A(i) < n + 1 ,即每個A(i)值大於等於 1 ,小於等於 n?
因為每個A(i)是正整數,所以這些A(i)最小值等於1。其次,共有n+1項的 A(1) + A(2) + ..... + A(n) + A(n + 1) = 2n,其中 A(i)最小值等於1
如果其中有n項都等於其最小值 1 ,則最後一項就有最大值
2n - n = n
所以 0 < A(i) < n + 1 ,即每個A(i)值大於等於 1 ,小於等於 n

2008-03-26 09:01:02 補充:
為什麼可以知道:
"所以 S 的子集之和可以為 1 到 2n 的任何正整數"
答: 因為 S是由n+1個正整數A(i)所組成的集合,已得知 A(i)值大於等於 1 ,小於等於 n 。如果A(i)其中有n項都等於其最小值 1 ,第n+1項A(n+1)有最大值 = n,則S的子集S1可以只有1個A(i), 2個A(i)...,n個A(i),S的子集之和可以為1到n的任何正整數。如果S的子集包括第n+1項A(n+1)與前述S1的組合,則S的子集之和可以為n=1到2n的任何正整數。綜上所述,S 的子集之和可以為 1 到 2n 的任何正整數

2008-03-26 09:01:44 補充:
抱歉,證明過程不夠詳細(仔細)

2008-03-26 09:47:58 補充:
重新調整證明過程,較清楚詳細的證明如下:
已知S為n+1個正整數A(i)的集合,且Σ A(i) = 2n。
∵A(i)是正整數,
∴A(i)最小值等於1。
∵Σ A(i) = 2n,如果有n項都等於1,則最後一項有最大值2n - n = n。
∴1<=A(i)<= n,其中只有一個最大A(i)值為 n 。
如果A(i)有n項都等於 1 ,第n+1項A(n+1)有最大值 = n,則S的子集S1可以只有1個A(i), 2個A(i), ..., n個A(i),S1的子集之和可以為1到n的任何正整數。

2008-03-26 09:48:41 補充:
如果S的子集包括第n+1項A(n+1)與前述S1的組合,則S的子集之和可以為n=1到2n的任何正整數。
∴S 的子集之和可以為 1 到 2n 的任何正整數。
故得證任何一個正整數 k < 2n,S 有子集之和為 k 。

2008-03-26 12:50:59 補充:
S 不必等於
{1,1,...,1,n}
即不一定要 (n個1,1個n) 的情形,在邏輯上是在原命題的假設下,證明並推導出「所有正整數 k < 2n,S 有子集之和為 k」的結論。此結論是表示需要滿足任一正整數 k < 2n,S 有子集之和為 k,即可。舉出S = {1,1,...,1,n}的例子只是要證明 A(i)最大值為n。
參考: 自己, 自己
2008-03-26 8:48 pm
{1,1,...,2,n-1}也可

1x(n-1) + 2 + (n-1)
=n-1+2+n-1
=2n


收錄日期: 2021-04-11 00:33:10
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20080324000016KK10904

檢視 Wayback Machine 備份