求助
查看原帖
求助
511737
TBFOA楼主2022/7/31 18:32

循环一次就停了,找了1个小时也没找到,求dalao帮忙看看

#include<iostream>
#include<algorithm>
using namespace std;
int n,q,a[8005],b[8005],act,x;
struct num{
	int b;
	int index;
}nums[8005];
bool cmp(num x,num y){
	if(x.b<y.b)return true;
	else if(x.b==y.b){
		if(x.index<y.index)return true;
		else return false;
	}
	else return false;
}
int main(){
	cin>>n>>q;
	for(int i=1;i<=n;i++)cin>>a[i];
	for(int i=1;i<=q;i++){
		cin>>act>>x;
		if(act==1){
			int v;
			cin>>v;
			a[x]=v;
		}else if(act==2){
			for(int j=1;i<=n;i++){
				nums[i].b=a[i];
				nums[i].index=i;
			}
			sort(nums+1,nums+1+n,cmp);
			for(int j=1;j<=n;j++){
				if(nums[j].index==x){
					cout<<j<<endl;
				}
			}		
		}
	}
	return 0;
}
2022/7/31 18:32
加载中...