这道题我们可以用桶数组来做,代码很简单,请看完:
#include <bits/stdc++.h>//万能头
using namespace std;//懂得都懂
int a[30005];//定一个桶数组
int main()
{
int k,n,b,sum=0;//sum用于排序计数,b、k、n用于输入
cin >> n >> k;//输入n,k
for(int i=1; i<=n; i++)//循环n次输入b
{
cin >> b;
a[b]=1;//将桶数组的那个数赋值为1
}
for(int i=1;i<=30000;i++)//重复执行30000次 (因为有最多30000个数)
{
if(a[i]==1) sum++;//如果这个桶数组有数,sum++
if(sum==k) //如果sum=k那么输出那个数
{
cout << i;
return 0;//记得return 0
}
}
cout << "NO RESULT";//如果没找到输出"NO RESULT"
return 0;
}
希望有大佬指点指点,也希望能关注关注,感谢。