循环删除元素,返回最后一个被删除元素的下标
Posted qiuhaifeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了循环删除元素,返回最后一个被删除元素的下标相关的知识,希望对你有一定的参考价值。
输入一个整数n(n大于等于2,小于等于1000),则从i=2开始每隔两个元素在数组arr[n]中删除该元素,可以在数组中循环,请返回最后一个被删除元素的下标:
#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;
以上是关于循环删除元素,返回最后一个被删除元素的下标的主要内容,如果未能解决你的问题,请参考以下文章