すべての開始を削除する最後の要素に戻り、アレイ内の要素の[n]は循環させてもよいARR除去アレイの2つの要素から整数を入力するn個(nは2以上、1000以下である)、I = 2添字:
#include<iostream>
#include<vector>
using namespace std;
int search(int n){
vector<int>visited(n,0);
if(n==2){
return 1;
}
int count=0;
int i=2;
while(true){
visited[i]=1;
count++;
if(count==n){
return i;
}
int count2=0;
while(visited[i]==1||count2<2)
{
if(visited[i]==0){
count2++;
}
i++;
i=i%n;
}
}
}
int main(){
int n;
while(cin>>n){
cout<<search(n)<<endl;
}
}