1 条题解

  • 0
    @ 2025-1-29 15:19:15

    答案:

    #include<bits/stdc++.h>
    using namespace std;
    struct br{
    	string id;
    	long long nl;
    }br[105];
    long long lnrrs;
    long long lnrnl[105];
    string lnrid[105];
    long long lnrxh[105];
    long long nqrrs;
    long long nqrnl[105];
    string nqrid[105];
    long long nqrxh[105];
    int main(){
    	long long brrs;
    	cin>>brrs;
    	for(int i=1;i<=brrs;i++){
    		cin>>br[i].id>>br[i].nl;
    		if(br[i].nl>=60){
    			lnrrs++;
    			lnrnl[lnrrs]=br[i].nl;
    			lnrid[lnrrs]=br[i].id;
    			lnrxh[lnrrs]=i;
    		}else{
    			nqrrs++;
    			nqrnl[nqrrs]=br[i].nl;
    			nqrid[nqrrs]=br[i].id;
    			nqrxh[nqrrs]=i;
    		}
    	}
    	for(int i=1;i<=lnrrs;i++){
    		for(int j=i+1;j<=lnrrs;j++){
    			if(lnrnl[j]>lnrnl[i]){
    				swap(lnrnl[j],lnrnl[i]);
    				swap(lnrid[j],lnrid[i]);
    				swap(lnrxh[j],lnrxh[i]);
    			}else{
    				if(lnrnl[j]==lnrnl[i]){
    					if(lnrxh[j]<lnrxh[i]){
    						swap(lnrnl[j],lnrnl[i]);
    						swap(lnrid[j],lnrid[i]);
    						swap(lnrxh[j],lnrxh[i]);
    					}
    				}
    			}
    		}
    	}
    	for(int i=1;i<=nqrrs;i++){
    		for(int j=i+1;j<=nqrrs;j++){
    			if(nqrxh[j]<nqrxh[i]){
    				swap(nqrid[j],nqrid[i]);
    				swap(nqrnl[j],nqrnl[i]);
    				swap(nqrxh[j],nqrxh[i]);
    			}
    		}
    	}
    	for(int i=1;i<=lnrrs;i++){
    		cout<<lnrid[i]<<"\n";
    	}
    	for(int i=1;i<=nqrrs;i++){
    		cout<<nqrid[i]<<"\n";
    	}
    	return 0;
    }
    
    

    求个好评

    • 1

    信息

    ID
    945
    时间
    1000ms
    内存
    128MiB
    难度
    10
    标签
    (无)
    递交数
    7
    已通过
    4
    上传者