题目描述
现有nn个正整数,n≤10000n≤10000,要求出这nn个正整数中的第kk个最小整数(相同大小的整数只计算一次),k≤1000k≤1000,正整数均小于3000030000。
输入格式
第一行为nn和kk; 第二行开始为nn个正整数的值,整数间用空格隔开。
输出格式
第kk个最小整数的值;若无解,则输出“NO RESULT”。
输入输出样例
输入 #1复制
10 3 1 3 3 7 2 5 1 2 4 6输出 #1复制
3说明/提示
n≤10000n≤10000
#include<iostream>
#include<set>
using namespace std;
set<int>s;
int a[10000];
int main()
{
int n, k;
cin >> n >> k;
for (int i = 0; i < n; i++)
{
cin >> a[i];
s.insert(a[i]);
}
int count = 0;
for (auto &x : s)
{
count++;
if (count == k)
cout << x;
else if (k<0 || k>s.size())
{
cout << "NO RESULT";
return 0;
}
}
}