1. 程式人生 > >【JS】Nim遊戲 #腦筋急轉彎

【JS】Nim遊戲 #腦筋急轉彎

你和你的朋友,兩個人一起玩 Nim遊戲:桌子上有一堆石頭,每次你們輪流拿掉 1 - 3 塊石頭。 拿掉最後一塊石頭的人就是獲勝者。你作為先手。 你們是聰明人,每一步都是最優解。 編寫一個函式,來判斷你是否可以在給定石頭數量的情況下贏得遊戲。

示例: 輸入: 4 輸出: false  解釋: 如果堆中有 4 塊石頭,那麼你永遠不會贏得比賽;      因為無論你拿走 1 塊、2 塊 還是 3 塊石頭,最後一塊石頭總是會被你的朋友拿走。

想起此前看過的一道題,

結果有一位骨骼清奇的少年只用一行程式碼解決了。他的思路是此題既然不會產生平局,那麼先選的一定贏。

return true;

所以看完這道題,還帶著#腦筋急轉彎#標籤,有那麼一瞬間就明白了

var canWinNim = function(n) {  
    return n%4!=0
};