求调
本人代码40
按正解写的
#include<bits/stdc++.h>
using namespace std;
int a[8888],b[8888],c[8888];
signed main(){
int n,q;
cin>>n>>q;
for(int i=1;i<=n;i++){
cin>>a[i];
b[i]=c[i]=i;
for(int j=i;j>=2;j--){
if(a[b[j]]<a[b[j-1]]){
swap(c[b[j]],c[b[j-1]]);
swap(b[j],b[j-1]);
}
else break;
}
}
while(q--){
int z;
cin>>z;
if(z==1){
int x,y;
cin>>x>>y;
a[x]=y;
for(int i=1;i<=n;i++){
for(int j=i;j>=2;j--){
if(a[b[j]]<a[b[j-1]]){
swap(c[b[j]],c[b[j-1]]);
swap(b[j],b[j-1]);
}
else break;
}
}
}
else{
int x;
cin>>x;
cout<<c[x]<<"\n";
}
}
return 0;
}