约瑟夫环:孩子们的游戏(圆圈中最后剩下的数)

Posted icehole

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了约瑟夫环:孩子们的游戏(圆圈中最后剩下的数)相关的知识,希望对你有一定的参考价值。

class Solution {
public:
    int LastRemaining_Solution(int n, int m)
    {
        if(m == 0 || n == 0)return -1;
        list<int> list1;
        for(int i = 0; i < n; i++){
            list1.push_back(i);
        }
        list<int>::iterator it = list1.begin();
        while(list1.size() > 1){
            for(int i = 1 ;i < m; i++){
                it++;
                if(it == list1.end()){
                    it = list1.begin();
                }
            }
            it = list1.erase(it);
            if(it == list1.end()){
                it = list1.begin();
            }
            
        }
        return list1.front();
    }
};

  这里调用了标准库中的函数。

以上是关于约瑟夫环:孩子们的游戏(圆圈中最后剩下的数)的主要内容,如果未能解决你的问题,请参考以下文章

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

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

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

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

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

《剑指offer》孩子们的游戏(圆圈中最后剩下的数)