emmm复习了下STL然后投机取巧用set写了一下,仅参考。
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n, m;
while (cin >> n >> m)
{
multiset<int> b;
int x;
for (int i = 0; i < n; ++i)
{
scanf("%d", &x);
if (b.empty())//如果set为空直接插入
b.insert(x);
else//set不空就让x与set里最小的比较
{
auto it = b.begin();
if(x > *it)
{
if(b.size() == m)//set里只能放m个数据
{
b.erase(it);
b.insert(x);
}
else
{
b.insert(x);
}
}
}
}
cout<<*b.begin()<<endl;
}
return 0;
}