LeetCode 390. Elimination Game
来源:互联网 发布:罗克韦尔plc编程 编辑:程序博客网 时间:2024/06/05 03:30
Problem Statement
(Source) There is a list of sorted integers from 1 to n. Starting from left to right, remove the first number and every other number afterward until you reach the end of the list.
Repeat the previous step again, but this time from right to left, remove the right most number and every other number from the remaining numbers.
We keep repeating the steps again, alternating left to right and right to left, until a single number remains.
Find the last number that remains starting with a list of length n.
Example:
Input:n = 9,1 2 3 4 5 6 7 8 92 4 6 82 66Output:6
Solution
Credits @NathanNi
class Solution(object): def lastRemaining(self, n): """ :type n: int :rtype: int """ head = 1 step = 1 left = True while n > 1: if left or n % 2: head += step step <<= 1 left = not left n >>= 1 return head
0 0
- [LeetCode] 390. Elimination Game
- LeetCode 390. Elimination Game
- 【LeetCode】390. Elimination Game
- 【LeetCode】 390. Elimination Game
- LeetCode 390. Elimination Game
- [leetcode]390. Elimination Game
- [LeetCode]390. Elimination Game
- LeetCode 390. Elimination Game
- [leetcode] 390. Elimination Game
- leetcode 390. Elimination Game
- leetcode 390. Elimination Game
- Leetcode 390. Elimination Game
- LeetCode—390. Elimination Game
- [Leetcode] 390. Elimination Game 解题报告
- leetcode 390. Elimination Game 消除游戏
- 390. Elimination Game
- 390. Elimination Game
- 390. Elimination Game
- C++ P1576 最小花费
- 基于Qt的车载GPS监控系统(3)界面设计
- Android6.0动态权限处理
- 网页 div(背景)随鼠标成动态效果
- Scrollview滑动冲突
- LeetCode 390. Elimination Game
- HDU-5970-最大公约数(合肥CCPC J题)-数学推导+找规律
- Realm-Android
- Linux kernel debug技巧----开启DEBUG选项
- StringBuffer
- Unity UGUI与NGUI的比较,NGUI完胜UGUI
- 编写一个简易的 HTTP 服务器程序
- 最新鲜最详细的Android SDK下载安装及配置教程
- 蓝桥杯 矩阵乘法