题解 | #孩子们的游戏(圆圈中最后剩下的数)#

孩子们的游戏(圆圈中最后剩下的数)

https://www.nowcoder.com/practice/f78a359491e64a50bce2d89cff857eb6

class Solution {
public:
    
public:
    int LastRemaining_Solution(int n, int m) {
        int array[5000] = {1};                         //定义一个数组
        for(int i = 0;i<n-1;i++){
            array[i] = i+1;
        }                                                 
        array[n-1] = 0;                             //构建环形数组     
                int _num {1},_table {};                       //_num 计数,_table 数组下标
        while(array[_table] != _table){
            if(_num == m-1){                       //计数到了m-1个,更改数组指向
                array[_table] = array[array[_table]];
                _table= array[_table];
                _num = 1;
                continue;                        //此处需跳出本次循环
            }
            _table = array[_table];
            _num++;
        }
        return _table;
    }
};                                                                    

全部评论

相关推荐

牛至超人:您好,京东物流岗了解一下吗?负责精加工食品的端到端传输
点赞 评论 收藏
分享
合适才能收到offe...:项目岗是什么岗?我看你有段好像跟策划运营相关,如果找运营的话第三段经历写详细点儿。 个人建议是把自我评价删了换成专业技能放在工作经验上或者下面。学生会那个也可以删,把第一个包装成店铺运营,写4-6给点。第三个也是写4-6个点。注意工作内容➕部分数据。 投递的时候BOS招呼用语改一下,换成我有xx工作经验,熟练掌握xx技能样式,也可以简历截图然后直接发送。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务