因为最多输入10次,因此cnt是计算组数;
cnt_st是计算容器里的元素个数,利用multiset的本身维持的有序性,可以定位到第几大的元素;
#include<iostream>
#include<set>
using namespace std;
int main(){
multiset<long long> st;
multiset<long long>::iterator point;
int cnt=0,length,max,num,cnt_st=0;
while(cin>>length>>max){
st.clear();cnt_st=0;
for(int i=0;i<length;i++){
cin>>num;
st.insert(num);
cnt_st++;
if(cnt_st>=max){
point=st.end();
for(int j=0;j<max;j++){
point--;
}
cout<<*point<<endl;
}
}
cnt++;
if(cnt==10){
break;
}
}
return 0;
}
你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答
<br>
本次提问扣除的有问必答次数,已经为您补发到账户,我们后续会持续优化,扩大我们的服务范围,为您带来更好地服务。