✔ 最佳答案
如果分母是質數,我的方法亦是硬拼的。因為 8<107/13<9,所以由 107 的 9 倍試起。又 107x9=3x321=1x963,13/107=117/963=(107+9+1)/963=1/9+1/107+1/963即最小的 Xn 是 963。
若果分母是合成數,則首先將它����為分母是質數的分數相加(或相減)9/119=11/17-4/7 ⋯⋯ [或 3/7-6/17]若是相減,則找出一個分數是在此兩個分數之間,分母越細越好,雙數更好,5/8 最合適 (後面的是 3/8),所以,9/119=11/17-4/7 ⋯⋯⋯⋯⋯⋯⋯⋯ [3/7-6/17]=(11/17-5/8)+(5/8-4/7) ⋯⋯ [(3/7-3/8)+(3/8-6/17)]=3/136+3/56 ⋯⋯⋯⋯ ⋯⋯⋯ [3/56+3/136]=1/136+1/68+1/56+1/28 ⋯ [1/56+1/28+1/136+1/68]所以最小的 Xn 是 136。
*若用 7/12,即=(11/17-7/12)+(7/12-4/7)=13/204+1/84=1/204+1/17+1/84即意見欄的 004
**若用 9/14,即=(11/17-9/14)+(9/14-4/7)=1/238+1/14即意見欄的 002
2015-06-07 11:35:43 補充:
用 7/12 時,即
=(11/17-7/12)+(7/12-4/7)
=13/204+1/84
=3/204+4/204+6/204+1/84
=1/68+1/51+1/34+1/84
即意見欄的 005
沒有考慮到 13 太多組合。
四個分數時:
9 / 119 = 1/34 + 1/51 + 1/68 + 1/84
Xn = 84
( 對不起,我偷懶,丟給電腦算的 )
2015-06-07 16:32:20 補充:
若 n = 4,
9 / 119 = 1/X1 + 1/X2 +1/X3 + 1/X4
利用 Excel VBA 列出可能解:
( 程式碼省略 )
只有一組解:
34, 51, 68, 84
( 即 9/119 = 1/34 + 1/51 + 1/68 + 1/84 )
X4 = 84
Q: 若n≠4 , 是否還有更小的 Xn ?
Sol:
9 / 119 ≒ 1/13.2 < 1/13
所以 1 ~ 13 不用考慮, 範圍限縮在 14 ~ 84
( 84暫保留,作為後續驗證程式是否正確之參考 )
令 S =Σ Ck / k , k = 14 ~ 84 , Ck = 0 或 1
若 S = 9/119 , 則 S =Σ Ck / k 即為解.
最大可能組數 = 2^(84-14+1) = 2^71 ≒ 2.36*10^21
這已超出一般PC的合理計算能力,所以需再次限縮範圍.
因為 119 = 7*17
由各位先進所算出的結果,大膽假設以下性質.(我不會證明)
性質: 所有 Xk 必為 7 或 17 的倍數.
若以上性質為真,則 Xk 只有以下15種可能:
14,17,21,28,34,35,42,49,51,56,63,68,70,77,84
令 X1 = 14 , X2 = 17 , ..... , X15 = 84
S =ΣCk / Xk , k = 1 ~ 15 , Ck = 0 或 1
若 S = 9/119 , 則 S =ΣCk / Xk 即為解.
因為線性係數 ( C1, C2 , ..... , C15 ) 本身形成二進位數,
所以可以利用For 迴圈index十進位,轉為二進位作為係數,
完整程式碼為:
Sub Find_Xn()
Dim C(15), X(15) As Integer
k = 1
r = 1
For i = 14 To 84
If (i Mod 7 = 0) Or (i Mod 17 = 0) Then
X(k) = i
k = k + 1
End If
Next
For i = 3 To 2 ^ 15 - 1
Temp = i
S = 0
Sol = ""
For j = 1 To 15
C(j) = Temp Mod 2
S = S + C(j) / X(j)
Temp = Int(Temp / 2)
Next
If S = 9 / 119 Then
For j = 1 To 15
If C(j) > 0 Then
Sol = Sol & X(j) & " "
End If
Next
Cells(r, 1) = Sol
r = r + 1
End If
Next
End Sub
執行結果僅一組解: 34, 51, 68, 84
Ans: Xn 最小值為84 , 若以下性質為真:
性質: 所有 Xk 必為 7 或 17 的倍數.