本來這個週末過得開開心心,結果為了解一道數學題薅掉了一把頭髮、、、整整10根!
而且還是一道小學數學題!!!
到底是什麼題呢?大家看看吧
這不就是一道邏輯題嘛!
先假如丁錯,則甲乙丙對,此時最小的abc=(2^3)*(3^2)*7=504>500,不在題幹範圍之內。
那麼也就是丁必對,甲乙丙中有一錯。
等一下
然後嘞?
並不能判斷甲乙丙哪個錯啊!!!
難道要先假設甲乙丙中一個是錯誤,然後挨個窮舉看哪個三位數滿足丁(各個數字之和是15)的條件嗎?
行吧行吧
既然要窮舉還不如用python!
嘿嘿嘿,循環+判斷走起
成功得到答案:乙說謊,abc=168
我們再來總結一下題幹中能夠提取的信息:
按照甲的說法,abc能被2^3=8整除。
按照乙的說法,abc能被3^2=9整除。
按照丙的說法,abc能被7整除。
按照丁的說法,abc相加為15
陷入沉思
經過一(絞)番(盡)回(腦)憶(汁)後,終於想起了小學時候學的整除的特性:
被3整除:數字之和能被3整除(逢3必消)
被9整除:數字之和能被9整除(逢9必消)
根據這些特性,我一直忽略了丁的說法中還有隱藏條件:abc能被3整除,不能被9整除
這樣一來,乙與丁的說法就是矛盾的。
上文我也說到了,假如丁錯,則甲乙丙對,此時最小的abc=(2^3)*(3^2)*7=504>500,不在題幹範圍之內。
所以乙錯了,甲丙丁是對的,此時abc能被8(甲)、7(丙)、3(丁)整除,則abc是8*7*3=168的倍數。小於500的168的倍數有168、336,只有1+6+8=15。
故abc = 168。
很多小夥伴在學習Python的過程中往往因為沒有資料或者沒人指導從而導致自己不想學下去了,因此我特意準備了大量的PDF書籍、視頻教程,都免費送給大家!不管你是零基礎還是有基礎都可以獲取到自己相對應的學習禮包!包括Python軟件工具和2019最新入門到實戰教程,(http://t.cn/A6Zvjdun)複製到瀏覽器打開!
閱讀更多 松鼠愛吃餅乾 的文章