zoukankan      html  css  js  c++  java
  • 循环删除元素,返回最后一个被删除元素的下标

    输入一个整数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;
    	}
    }
  • 相关阅读:
    基本排序
    mysql安装
    函数和方法
    COOKIE 与 SESSION
    django---入门
    django模板继承
    2017-11-14
    Django---模板层(template)
    Dajngo---model基础
    Django--基础篇
  • 原文地址:https://www.cnblogs.com/qiuhaifeng/p/11515375.html
Copyright © 2011-2022 走看看