各种样例都过了还是错,咋办

现在请你对这样的问题,进行回答。
已知一个空序列,有两种操作方式。
0 x:表示在序列中插入一个值为x的数
1 k:询问序列中排在第k位的数是几,序列保持从小到大排序。
我的代码

#include<bits/stdc++.h>
using namespace std;
int cmp(int a,int b)
{
return b>a;
}
long long g[99999];
int main(){
long long u,y,kk=0,jj,a,x[99999],p=1;
cin>>u;
for(int i=1;i<=u;i++){
cin>>y>>a;
if(y==0){
kk++;
g[kk]=a;
sort(g,g+kk,cmp);
}
if(y==1){
x[p]=g[kk-a+1];
p++;
} 
}
for(int i=1;i<p;i++)
{
cout<<x[i]<<endl;
}
return 0;
}

帮忙改一下谢谢,一直是错80%。

第14行和第15行交换一下,应该是先存数据,然后再kk++

img

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632