leetcode 390. 消除游戏

class Solution {
    public int lastRemaining(int n) {
        return help(n);
    }
    
        public static int help(int n){
    	if(n==2)return 2;
    	if(n==1)return 1;
    	if(n%2==1){
    		return help(n-1);
    	}else{
    		return 2*(n/2+1-help(n/2));
    	}
    }
}

作者:daiyang
链接:https://leetcode-cn.com/problems/elimination-game/solution/cong-chao-shi-dao-100de-ti-jie-by-daiyang/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

看懂,还没提交

给定一个从1 到 n 排序的整数列表。
首先,从左到右,从第一个数字开始,每隔一个数字进行删除,直到列表的末尾。
第二步,在剩下的数字中,从右到左,从倒数第一个数字开始,每隔一个数字进行删除,直到列表开头。
我们不断重复这两步,从左到右和从右到左交替进行,直到只剩下一个数字。
返回长度为 n 的列表中,最后剩下的数字。

https://leetcode-cn.com/problems/elimination-game/solution/cong-chao-shi-dao-100de-ti-jie-by-daiyang/

更好的解释:

https://blog.csdn.net/afei__/article/details/83689502

posted on 2020-01-26 20:33  Paulkg12  阅读(138)  评论(0编辑  收藏  举报

导航