52pts QAQ 球大佬帮调,感激不尽
查看原帖
52pts QAQ 球大佬帮调,感激不尽
1277913
Zebraj楼主2024/8/15 14:58

代码如下,最后几个TLE了 TnT

#include<bits/stdc++.h>
using namespace std;
struct f{
	int s,num;
}a[10000],b[10001];
bool cmp(f a,f b){
	if(a.s!=b.s)return a.s<b.s;
	else return a.num<b.num;
}
int main(){	
	int n,q,x,v,op;
	cin>>n>>q;
	for(int i=1;i<=n;i++){
		cin>>a[i].s;
		a[i].num=i;
		b[i].s=a[i].s;
		b[i].num=i;
	}
	while(q--){
		cin>>op;
		if(op==1){
			cin>>x>>v;
			a[x].s=v;
			b[x].s=v;
		}else{
            cin>>x;	
			sort(b+1,b+n+1,cmp);
			for(int i=1;i<=n;i++){
				if(b[i].num==x){
					cout<<i<<endl;	
				}
				b[i].num=a[i].num;
				b[i].s=a[i].s;
			}
		}
	}
} 
2024/8/15 14:58
加载中...