Golang | Leetcode Golang题解之第390题消除游戏

题目:

题解:

Go 复制代码
func lastRemaining(n int) int {
    a1 := 1
    k, cnt, step := 0, n, 1
    for cnt > 1 {
        if k%2 == 0 { // 正向
            a1 += step
        } else { // 反向
            if cnt%2 == 1 {
                a1 += step
            }
        }
        k++
        cnt >>= 1
        step <<= 1
    }
    return a1
}
相关推荐
小武~15 分钟前
Leetcode 每日一题C 语言版 -- 274 H-index
c语言·算法·leetcode
蒟蒻小袁19 分钟前
Hot100--找到字符串中所有字母异位词
java·算法·leetcode·面试
吃着火锅x唱着歌26 分钟前
LeetCode 2909.元素和最小的山形三元组II
数据结构·算法·leetcode
程序员-King.1 小时前
day115—同向双指针—将x减到0的最小操作数(LeetCode-1658)
算法·leetcode·双指针
前端小白在前进1 小时前
力扣刷题:有效的括号
算法·leetcode·职场和发展
EXtreme351 小时前
算法深潜:链表中的生死之环(LeetCode 141 & 142 详解)
数据结构·算法·leetcode·链表·快慢指针·数学证明·带环链表
leoufung2 小时前
LeetCode 211:设计添加与搜索单词的数据结构(Trie + DFS)
数据结构·leetcode·深度优先
Dream it possible!2 小时前
LeetCode 面试经典 150_图的广度优先搜索_蛇梯棋(93_909_C++_中等)(广度优选搜索)
c++·leetcode·面试·广度优先
资深web全栈开发2 小时前
LeetCode 3578:统计极差最大为 K 的分割方式数 - 深入浅出指南
算法·leetcode·前缀和·动态规划·滑动窗口
alphaTao2 小时前
LeetCode 每日一题 2025/12/1-2025/12/7
数据库·算法·leetcode