#31008: C++暴力解 vector?


jddlake@gmail.com (En-en smalley)

學校 : 不指定學校
編號 : 167396
來源 : [101.136.181.196]
最後登入時間 :
2023-02-15 00:08:53
a528. 大數排序 | From: [101.136.0.133] | 發表日期 : 2022-07-02 18:50

#include <bits/stdc++.h>
using namespace std;

int main(){
    ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0);
    int n;
    while(cin >> n){
        vector<string> pos[110], neg[110];
        for(int i = 0; i<n; i++){
            string num;
            cin >> num;
            if(num[0] == '-') neg[num.length()].push_back(num);
            else pos[num.length()].push_back(num);
        }
        for(int i = 1; i<=100; i++){
            if(!pos[i].empty()) sort(pos[i].begin(), pos[i].end());
            if(!neg[i].empty()) sort(neg[i].begin(), neg[i].end());
        }
        for(int i = 100; 0<i; i--)
            if(!neg[i].empty())
                for(int k = neg[i].size()-1; 0<=k; k--)
                    cout << neg[i][k] << endl;
        for(int i = 1; i<=100; i++)
            if(!pos[i].empty())
                for(int k = 0; k<pos[i].size(); k++)
                    cout << pos[i][k] << endl;
    }

    return 0;
}

 
ZeroJudge Forum