LintCode 硬幣排成線

有 n 個(gè)硬幣排成一條線。兩個(gè)參賽者輪流從右邊依次拿走 1 或 2 個(gè)硬幣,直到?jīng)]有硬幣為止。拿到最后一枚硬幣的人獲勝。

請(qǐng)判定 第一個(gè)玩家 是輸還是贏?

樣例
n = 1, 返回 true.

n = 2, 返回 true.

n = 3, 返回 false.

n = 4, 返回 true.

n = 5, 返回 true.

挑戰(zhàn)
O(1) 時(shí)間復(fù)雜度且O(1) 存儲(chǔ)。

分析:博弈的思想

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) {
        return !(n % 3 == 0);
    }
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 題目 有 n 個(gè)硬幣排成一條線。兩個(gè)參賽者輪流從右邊依次拿走 1 或 2 個(gè)硬幣,直到?jīng)]有硬幣為止。拿到最后一枚硬...
    六尺帳篷閱讀 506評(píng)論 0 2
  • 題目 有 n 個(gè)不同價(jià)值的硬幣排成一條線。兩個(gè)參賽者輪流從左邊依次拿走 1 或 2 個(gè)硬幣,直到?jīng)]有硬幣為止。計(jì)算...
    六尺帳篷閱讀 1,825評(píng)論 1 3
  • 問題: 有 n 個(gè)硬幣排成一條線。兩個(gè)參賽者輪流從右邊依次拿走 1 或 2 個(gè)硬幣,直到?jīng)]有硬幣為止。拿到最后一枚...
    留十夜閱讀 325評(píng)論 0 0
  • 背景 一年多以前我在知乎上答了有關(guān)LeetCode的問題, 分享了一些自己做題目的經(jīng)驗(yàn)。 張土汪:刷leetcod...
    土汪閱讀 12,774評(píng)論 0 33
  • 每當(dāng)一個(gè)人去食堂,一個(gè)人去圖書館,總有種不舒服的感覺,兩個(gè)人覺得變扭,一個(gè)人覺得缺失。只有桌前一杯茉莉花茶讓人心安。
    玲溪閱讀 293評(píng)論 0 0