【跪】求调代码
查看原帖
【跪】求调代码
228745
AllenKING_RED楼主2021/10/25 23:05
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n,q;
ll a[10086];
ll b[10086];
ll c[10086];
int main(void)
{
    cin>>n>>q;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
        b[i]=i;
        c[b[i]]=i;
    }
    for(int i=1;i<=n;i++)
    {
        for(int j=i;j>=2;j--)
        {
            if(a[j]<a[j-1])
            {
                swap(a[j],a[j-1]);
                swap(b[j],b[j-1]);
                swap(c[b[j]],c[b[j-1]]);
            }
        }
    }
    for(int k=1;k<=q;k++)
    {
        int u;
        cin>>u;
        if(u==1)
        {
            ll x,y;
            cin>>x>>y;
            x=c[x];
            if(a[x]>y)
            {
      	      a[x]=y;
      	      for(int i=n;i>1;i--)
     	           if(a[i]<a[i-1]||(a[i]==a[i-1]&&c[i]<c[i-1]))
     	           {
     	               swap(a[i],a[i-1]);
     	               swap(b[i],b[i-1]);
     	               swap(c[b[i]],c[b[i-1]]);
    	            }            	
			}
			else if(a[x]<y)
			{
				a[x]=y;
         	 	for(int i=1;i<n;i++)
          	  		if(a[i]>a[i+1]||(a[i]==a[i+1]&&c[i]>c[i+1]))
        	    	{
            			swap(a[i],a[i+1]);
           		 		swap(b[i],b[i+1]);
            			swap(c[b[i]],c[b[i+1]]);
					}				
			}
        }
        else
        {
            ll x;
            cin>>x;
            cout<<c[x]<<endl;
        }
    }
    return 0;
}

40分,其他全WA

2021/10/25 23:05
加载中...