简单来说,就是将数据类型改为pair,保证值不同就行,less<pair<int,int>>是根据键的大小由小到大排序的
#include<bits/stdc++.h>
#include<ext/pb_ds/assoc_container.hpp>
#include<ext/pb_ds/tree_policy.hpp> //用tree
using namespace __gnu_pbds;
tree<std::pair<int,int>,null_type,std::less<std::pair<int,int>>,rb_tree_tag,tree_order_statistics_node_update>T;
void gkd(){std::ios::sync_with_stdio(0);std::cin.tie(0);std::cout.tie(0);}
void solve(){
int n,m,k;
std::cin>>n>>m>>k;
int i=1;
while(n--){
int temp;
std::cin>>temp;
T.insert({temp,i});
i++;
}
while(m--){
int op;
std::cin>>op;
if(op==1){
int num;
std::cin>>num;
T.insert({num,i});
i++;
}
else{
std::cout<<T.find_by_order(k-1)->first<<std::endl;
}
}
}
signed main(){
gkd();
int t=1;
//std::cin>>t;
while(t--){
solve();
}
}