标记数组的使用

 

 #include<iostream>

using namespcae std;

const int N=1e4+10;

int st[N];

int num=0;

int main(){

int n,k;

cin>>n>>k;

for(int i=1;i<=n;i++){

int x;

cin>>x;

 

if(st[x]==0){

st[x]=1;

num++;

}

}

if(k>num){

cout<<"NO RESULT"<<endl;

}else{

for(int i=0;i<=30000;i++){//正整数均小于30000

if(st[i]==1){//遍历正整数数组,如果出现在标记数组里,k就减去1,直到k减到0,就是数组里的第k大的元素

k--;

}

if(k==0){

cout<<i<<endl;

return 0;

}

}

}

 

posted @ 2023-03-09 16:00  chenxinyue  阅读(36)  评论(0编辑  收藏  举报