TLE代码
#include<iostream>
#include<cstdio>
using namespace std;
int n,q,a[8001],op,x,v,num;
int main(){
scanf("%d%d",&n,&q);
for(int i=1;i<=n;i++){
scanf("%d",&a[i]);
}
for(int i=1;i<=q;i++){
cin>>op;
if(op==1){
scanf("%d%d",&x,&v);
a[x]=v;
}else{
scanf("%d",&x);
num=n;
for(int j=1;j<x;j++){
if(a[j]>a[x]){
num--;
}
}
for(int j=x+1;j<=n;j++){
if(a[j]>=a[x]){
num--;
}
}
printf("%d\n",num);
}
}
return 0;
}
AC代码
```cpp
#include<iostream>
#include<cstdio>
using namespace std;
int a[10011];
int main()
{
int n,q;
cin>>n>>q;
for(int i=1;i<=n;i++)scanf("%d",&a[i]);
for(int i=1;i<=q;i++){
int xx;
scanf("%d",&xx);
if(xx==1){
int x,v;
scanf("%d%d",&x,&v);
a[x]=v;
}
else {
int x;
scanf("%d",&x);
int w=a[x];
int sum=n;
for(int j=1;j<x;j++){
if(a[j]>w){
sum--;
}
}
for(int j=x+1;j<=n;j++){
if(a[j]>=w) sum--;
}
printf("%d\n",sum);
}
}
return 0;
}
哪位大佬能给我解释一下