那么,該用什么方法來進行這個步驟的推理呢?
這個時候,相信屏幕前大部分小可愛們的第一反應都是二分法。
確實,在所有方法中,二分法解決問題的步驟期望非常不錯,看似是個好辦法。
然而,在這個游戲規則的限制下,二分法卻是碰都不能去碰的陷阱!
就拿林朔目前狀態來說,他用掉了兩條命,只剩下三條命,目前10~99這個區間內的所有東西對他來說都是未知的存在。
那么,假設答案范圍在32~33這兩個危險指數之間,由于他起初不知道這個答案,若是貿然采用二分法,將會出現什么情況?
首先,將這個數字從中間截斷,也就是從54開始二分。
然后,他死了,還剩下兩條命。
那么,接下來呢?
繼續二分,大概就是從32開始。
然后,又死了,只剩下一條命。
這個時候,由于機會只剩最后一次,他就不得不從11開始,一步一步往后挪,用這種最原始的蠢辦法來確認答案。
這樣一來,時間就成了大麻煩。
通過前兩個步驟,剩余的時間大概只剩下8分鐘,也就意味著在這么點兒時間里平均每分鐘需要開2~3扇門。然而,光是開門這個動作就需要花費大概20s才能完成,這還不算中途奔波的時間、不算連續開門導致的肌肉疲勞。
這樣一來,最終幾乎不可能在規定時間內通關。
那么,換一種更加保險的方式。不使用二分法,而是采取逐級上跳的辦法,先一步確認粗略范圍,然后再用一條命來進行細致推理。
這樣可以嗎?
我們來看看。
比如:首先,選擇危險指數為20的房間作為目標,如果沒死,就選擇危險指數為30的房間作為目標…以此類推。
假如在選擇危險指數為50的房間作為目標后死去,那么接下來就只要從41一個個往上挨個實驗,最多到49,即可得到答案。
表面來看,這似乎是一個不錯的辦法。雖然它不能像二分法那樣快速排除大量錯誤答案,但卻穩扎穩打、一步一個腳印,比較踏實。
可是,真的是這樣嗎?
此處,需要考慮一種極端情況,也就是答案為99~100。
假設是這樣,就意味著玩家需要一直往上推進:20,30,40,50,60,70,80,90,一共8次。
直到這個時候,才意識到答案在90~100之間。
在這個游戲中,房間危險指數逐級增高、呈龍擺尾式排列,意味著玩家中途需要花費大量時間趕路——從一頭跑到另一頭,對時間和體力都是損耗。
并且,后續還要逐級向上:91,92,93,94,95,96,97,98,99,一共9次。
直到這個時候,才意識到原來答案是99~100。
也就是說,如果采用這個方式,最多需要嘗試9+8=17次,才能得到確切答案。
并且,這17次中的8次還需要大量奔波,這將導致時間變得異常緊張。
畢竟完成不了挑戰就得死,林朔當然不可能賭正確答案就在11~20之間,他必須要考慮到最壞情況,這是對自己的生命負責。
好了!這個時候,相信屏幕前的大聰明、大漂亮們都開竅了,想到了一種更巧妙的辦法來完成游戲——
將第一個二分法和第二個等差遞增法結合起來,就可以更加高效地得到正確答案!
首先,用二分法將數據兩份,確定一個大致范圍。
如果死了,就證明正確答案在10~54之間;如果沒死,就證