约瑟夫问题是:有 n 只猴子,按顺时针方向围成一圈选大王(编号为 1~n),从第 1 号开始报数,一直数到 m,数到 m 的猴子退到圈外,剩下的猴子再接着从 1 开始报数。就这样,直到圈内只剩下一只猴子时,这个猴子就是猴王。编程求输入 n、m 后,输出最后猴王的编号。
尝试使用STL容器进行解答:使用list,遍历并删除
#include <stdio.h>
#include <stdlib.h>
#include <algorithm>
#include <string.h>
#include <string>
#include <list>
#include <vector>
#include <iostream>
#define MAX_STR_LEN 10
using namespace std;
const int maxn = 100;
vector<int> pile[maxn];
list<int> moneky;
int main()
{
int n,m;
while(true)
{
cin