WA蒟蒻求调
查看原帖
WA蒟蒻求调
682028
_awa_keyai楼主2022/10/16 14:38
#include<bits/stdc++.h>
using namespace std;
inline int read(){
	int ret=0,f=1;
	char c=getchar();
	for(;c<'0'||c>'9';c=getchar()) if(c=='-') f=-f;
	for(;c>='0'&&c<='9';c=getchar()) ret=ret*10+c-'0';
	return ret*f;
}
int n,Q;
const int maxn=8000+55;
int t[maxn];
struct number{
	int pre,id;
}a[maxn];
bool cmp(number &a,number &b){
	if(a.pre!=b.pre) return a.pre<b.pre;
	return a.id<b.id;
}
signed main(void){
	
	n=read();Q=read();
	
	for(int i=1;i<=n;i++){
		a[i].pre=read();
		a[i].id=i;
	}
	sort(a+1,a+1+n,cmp);
	for(int i=1;i<=n;i++){
		t[a[i].id]=i;
	}
	while(Q--){
		int opr=read();
		if(opr==1){
			int x,y;
			x=read();y=read();
			
			a[t[x]].pre=y;
			
			for(int i=n;i>=2;i--){
				if(cmp(a[i],a[i-1])){
					number tmp=a[i];
					a[i]=a[i-1];
					a[i-1]=tmp;
				}
			}
			
			for(int i=2;i<=n;i++){
				if(cmp(a[i],a[i-1])){
					number tmp=a[i];
					a[i]=a[i-1];
					a[i-1]=tmp;				
				}
			}
			
			for(int i=1;i<=n;i++){
				t[a[i].id]=i;
			}
		} else {
			int k=read();
			scanf("%d\n",t[k]);
		}
	}
	
	return 0;
}
2022/10/16 14:38
加载中...