消除游戲

來(lái)源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/elimination-game

題目描述:

列表 arr 由在范圍 [1, n] 中的所有整數(shù)組成,并按嚴(yán)格遞增排序。請(qǐng)你對(duì) arr 應(yīng)用下述算法:
從左到右,刪除第一個(gè)數(shù)字,然后每隔一個(gè)數(shù)字刪除一個(gè),直到到達(dá)列表末尾。
重復(fù)上面的步驟,但這次是從右到左。也就是,刪除最右側(cè)的數(shù)字,然后剩下的數(shù)字每隔一個(gè)刪除一個(gè)。
不斷重復(fù)這兩步,從左到右和從右到左交替進(jìn)行,直到只剩下一個(gè)數(shù)字。
給你整數(shù) n ,返回 arr 最后剩下的數(shù)字。

示例 1:

輸入:n = 9
輸出:6
解釋?zhuān)?br> arr = [1, 2, 3, 4, 5, 6, 7, 8, 9]
arr = [2, 4, 6, 8]
arr = [2, 6]
arr = [6]

示例 2:

輸入:n = 1
輸出:1

代碼實(shí)現(xiàn):
class Solution {
    public int lastRemaining(int n) {
        return n == 1 ? 1 : 2 * (n / 2 + 1 - lastRemaining(n / 2));
    }
}


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容