LintCode 硬幣排成線

題目

有 n 個硬幣排成一條線。兩個參賽者輪流從右邊依次拿走 1 或 2 個硬幣,直到沒有硬幣為止。拿到最后一枚硬幣的人獲勝。

請判定 第一個玩家 是輸還是贏?

** 樣例 **
n = 1, 返回 true.

n = 2, 返回 true.

n = 3, 返回 false.

n = 4, 返回 true.

n = 5, 返回 true.

分析

這道題是典型的博弈論,顯然每次我們都是三個三個循環,如果我先拿,我拿一個,對方可以拿兩個,我拿兩個,對方可以拿一個,所以如果總數是三的倍數的話,肯定是對方獲勝,所以答案就出來了,n不能是三的倍數

代碼

public class Solution {
    /**
     * @param n: an integer
     * @return: a boolean which equals to true if the first player will win
     */
    public boolean firstWillWin(int n) {
        // write your code here
        return n%3!=0; 
    }
}
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 題目 有 n 個不同價值的硬幣排成一條線。兩個參賽者輪流從左邊依次拿走 1 或 2 個硬幣,直到沒有硬幣為止。計算...
    六尺帳篷閱讀 1,825評論 1 3
  • 有 n 個硬幣排成一條線。兩個參賽者輪流從右邊依次拿走 1 或 2 個硬幣,直到沒有硬幣為止。拿到最后一枚硬幣的人...
    Arnold134777閱讀 616評論 0 0
  • 問題: 有 n 個硬幣排成一條線。兩個參賽者輪流從右邊依次拿走 1 或 2 個硬幣,直到沒有硬幣為止。拿到最后一枚...
    留十夜閱讀 325評論 0 0
  • 太多的時候你不明白時,兩個人在一起你總想著分開,其實對方是在堅持的,你卻說了分手,后來的后來,當你明白了,在一起多...
    紐扣你好閱讀 200評論 0 0
  • “千載古柏樹,百年尊經閣”,書臺文宗子昂在,盛世金中譜新篇。金華中學承歷史之厚蘊,擔社會之重任,跟時代之...
    遠方山谷里的思念閱讀 795評論 0 5