解的個數討論

本帖於 2023-11-27 15:11:17 時間, 由普通用戶 kde235 編輯

幾位的分析非常好,我也跟風來討論一下解的個數問題。
就從我們已得出的公式出發:
  d[2000] = (-2)^k * d[2]         ----- (1)
 
現在的問題是當給定d[2000]的值為m時,d[2]一共有多少個解 (例如在原題中, m=7)

注意m總可以分解出2的因子乘積:
   m = 2^p * q
p, q為整數, p>=0,  q為奇數(可能為負)

給定p,q,把k,d[2]看成未知數,我們需討論以下方程的整數解個數。
  2^p * q  = (-2)^k * d[2]
 
首先明確,每個解的k和d[2]是一一對應的,所有解中不同k的個數就是所有解中d[2]的個數。
以p的值分情況討論。

1) 當p=0時(也就是m是奇數時),方程變為
         q = (-2)^k * d[2]
   因為q為奇數,k一定為0, 因此此時隻有一個解:
          d[2] = q = m
   也就是d[2]的值與d[2000]相等
   
2) 當p=1時, 方程為
        2 * q = (-2)^k * d[2]
    此時k可取兩個值: 0和1, 對應於d[2]的兩個解:
      k=0:  d[2] = 2*q = m
      k=1:  d[2] = 2*q/(-2) = -q = -m/2
    也就是說,d[2]或與d[2000]值相等,或為d[2000]的-1/2

3) 當p=2時,方程為
      2^2 * q = (-2)^k * d[2]
   此時k可取0,1,或2, 對應與d[2]的3個解:
      k=0:  d[2] = 2^2 * q = m
      k=1:  d[2] = 2^2 * q / (-2) = -2*q = -m/2
      k=2:  d[2] = 2^2 * q / (-2)^2 = q = m/4
      
不難看出,對於一般情況,方程共有(p+1)個解:  m, -m/2, m/4, -m/8, ....

現在可以回答幾個前麵關心的問題:
1. 何時隻有一個解?
   當p=0, 也就是當m為奇數時(例如原題m=7)

2. 何時題中兩種情況都可能發生(買和賣: k>0), 並且需要用到“第二天挖多於2枚”的條件?
   當p=1時, 方程有兩種可能解: k為0或1,注意此時d[2]為 m 或 -m/2, 比較正負性可確定一個解
   例如: 當 m = 6 = 2 * 3 時, 我們知道 d[2]可為 6 或 -3, 因為有“第二天挖多於2枚”的條件,就隻能為6
   
綜上,如果原題改為"第2000天比1999天多挖6枚", 問題也隻有一個解,而且需要考慮買和賣兩種情況,感覺更有趣一些:)
  

請您先登陸,再發跟帖!