社区讨论

WA+RE,必关

P1012[NOIP 1998 提高组] 拼数参与者 2已保存回复 2

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
2 条
当前快照
1 份
快照标识符
@mjo9hevk
此快照首次捕获于
2025/12/27 20:13
2 个月前
此快照最后确认于
2025/12/30 18:30
2 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
bool cmp(int a,int b){
    int t[10],t2[10],cnt1=0,cnt2=0;
    int aa=a,bb=b;
    while(aa){
        t[cnt1]=aa%10;
        cnt1++;
        aa/=10;
    }
    while(bb){
        t2[cnt2]=bb%10;
        cnt2++;
        bb/=10;
    }
    for(int i=min(cnt1,cnt2-1);i>=0;i--){
        if(t[i]>t2[i]){
            return a>b;
        }
        if(t[i]<t2[i]){
            return a<b;
        }
    }
    if(cnt1>cnt2){
        return a>b;
    }else{
        return a<b;
    }
}
int main(){
    int n;
    cin>>n;
    int t,ans[30];
    for(int i=0;i<n;i++){
        cin>>t;
        ans[i]=t;
    }
    sort(ans,ans+n,cmp);
    for(int i=0;i<n;i++){
        cout<<ans[i];
    }
    return 0;
}

回复

2 条回复,欢迎继续交流。

正在加载回复...