在網上看到的一個題
———————-問題———————-
教授選出兩個從2到9的數,把它們的和告訴學生甲,把它們的積告訴學生乙,讓他們輪流猜這兩個數。
甲說:“我猜不出”。
乙說:“我猜不出”。
甲說:“我猜到了”。
乙說:“我也猜到了”。
問這兩個數是多少 。
(PS:此處是我加的,假設甲乙是絕對聰明而且沒有粗心犯錯才說出上面的話的)
———————-解答———————-
我的解答:
甲說:“我猜不出”。 ① //此句說明 和theSum可以分解為2個及以上的2-9數字和
乙說:“我猜不出”。 ② //此句說明 積theMul可以分解為2個及以上的2-9數字積,且有至少兩組分解的因子和要滿足①
甲說:“我猜到了”。 ③ //此句說明 和theSum的分解組合中,有且只有一種組合對應的積滿足②
乙說:“我也猜到了”。 ④ //此句說明 積theMul的分解組合中,有且只有一種組合對應的和滿足③
如此以來程序就可以實現了,如果一個一個列出來再查找結果也可以,但是那是小學生的做法。
注意要考慮的是這兩個數字是否可以相同。