#include <bits/stdc++.h>
#include<string>
using namespace std;
#define MAX 100
int main()
{
int k=1;
while(k++<=10)
{
int flag=0,a[MAX]={0};
int i=0,cur=0,cnt=0;
for(int m=k+1;;m++)
{
for(int i=0;i<=2*k;i++)
a[i]=0;
i=0,cur=0,cnt=0;
while(cnt<k)
{
cur=(cur==2*k?1:cur+1);
if(a[cur]==0)
{
i++;
if(i==m)
{
if(cur<=k){flag=0;break;}
a[cur]=1;
i=0;cnt++;flag=1;
}
}
}
if(flag)
{
cout<<m<<endl;
break;
}
}
}
system("pause");
return 0;
}
共2k个数,每隔m-1个数剔除,求符合先被剔除的k个数全部都是最后k个这一条件的最小m