Submission #71315099


Source Code Expand

#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;

string fse(vector<string>& strings) {
    int n = strings.size();
    sort(strings.begin(), strings.end());
    bool allSame = true;
    for (int i = 1; i < n; i++) {
        if (strings[i] != strings[i + 1]) {
            allSame = false;
            break;
        }
    }
    
    if (allSame) {
        swap(strings[0], strings[1]);
        string result;
        for (const auto& s : strings) {
            result += s;
        }
        return result;
    }
    vector<string> original = strings;
    vector<string> candidate1 = strings;
    swap(candidate1[n-1], candidate1[n-2]);
    string originalConcatenated;
    for (const auto& s : strings) {
        originalConcatenated += s;
    }
    
    string candidate1Concatenated;
    for (const auto& s : candidate1) {
        candidate1Concatenated += s;
    }
    
    if (candidate1Concatenated > originalConcatenated) {
        return candidate1Concatenated;
    }
    int i = n - 2;
    while (i >= 0 && strings[i] >= strings[i + 1]) {
        i--;
    }
    
    if (i >= 0) {
        int j = n - 1;
        while (strings[j] <= strings[i]) {
            j--;
        }
        swap(strings[i], strings[j]);
        reverse(strings.begin() + i + 1, strings.end());
        
        string result;
        for (const auto& s : strings) {
            result += s;
        }
        return result;
    }
    sort(strings.begin(), strings.end());
    swap(strings[0], strings[1]);
    string result;
    for (const auto& s : strings) {
        result += s;
    }
    return result;
}

int main() {
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    
    int T;
    cin >> T;
    
    while (T--) {
        int N;
        cin >> N;
        vector<string> strings(N);
        
        for (int i = 0; i < N; i++) {
            cin >> strings[i];
        }
        
        string result = fse(strings);
        cout << result << "\n";
    }
    
    return 0;
}

Submission Info

Submission Time
Task F - Concat (2nd)
User a_legend_cat
Language C++23 (GCC 15.2.0)
Score 0
Code Size 2120 Byte
Status WA
Exec Time 95 ms
Memory 38236 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 575
Status
WA × 1
AC × 26
WA × 75
Set Name Test Cases
Sample sample_01.txt
All killer_01.txt, killer_02.txt, killer_03.txt, killer_04.txt, killer_05.txt, killer_06.txt, killer_07.txt, killer_08.txt, killer_09.txt, killer_10.txt, killer_11.txt, killer_12.txt, killer_13.txt, killer_14.txt, killer_15.txt, killer_16.txt, killer_17.txt, killer_18.txt, killer_19.txt, killer_20.txt, sample_01.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt, test_58.txt, test_59.txt, test_60.txt, test_61.txt, test_62.txt, test_63.txt, test_64.txt, test_65.txt, test_66.txt, test_67.txt, test_68.txt, test_69.txt, test_70.txt, test_71.txt, test_72.txt, test_73.txt, test_74.txt, test_75.txt, test_76.txt, test_77.txt, test_78.txt, test_79.txt, test_80.txt
Case Name Status Exec Time Memory
killer_01.txt WA 52 ms 36444 KiB
killer_02.txt WA 52 ms 36448 KiB
killer_03.txt WA 54 ms 38216 KiB
killer_04.txt WA 54 ms 38168 KiB
killer_05.txt WA 20 ms 19056 KiB
killer_06.txt WA 53 ms 37932 KiB
killer_07.txt WA 21 ms 19224 KiB
killer_08.txt WA 54 ms 37688 KiB
killer_09.txt WA 54 ms 37500 KiB
killer_10.txt WA 21 ms 19312 KiB
killer_11.txt WA 8 ms 11564 KiB
killer_12.txt WA 8 ms 11636 KiB
killer_13.txt WA 20 ms 19076 KiB
killer_14.txt WA 20 ms 19136 KiB
killer_15.txt WA 54 ms 37872 KiB
killer_16.txt WA 54 ms 37876 KiB
killer_17.txt WA 54 ms 37876 KiB
killer_18.txt WA 53 ms 38236 KiB
killer_19.txt WA 54 ms 37876 KiB
killer_20.txt WA 53 ms 38228 KiB
sample_01.txt WA 1 ms 3516 KiB
test_01.txt AC 36 ms 3564 KiB
test_02.txt WA 39 ms 3516 KiB
test_03.txt WA 35 ms 3544 KiB
test_04.txt WA 33 ms 3660 KiB
test_05.txt WA 33 ms 3656 KiB
test_06.txt WA 33 ms 3624 KiB
test_07.txt WA 33 ms 3516 KiB
test_08.txt WA 32 ms 3516 KiB
test_09.txt WA 33 ms 3688 KiB
test_10.txt WA 32 ms 3588 KiB
test_11.txt AC 7 ms 11308 KiB
test_12.txt WA 25 ms 14312 KiB
test_13.txt WA 33 ms 16852 KiB
test_14.txt WA 39 ms 18844 KiB
test_15.txt WA 43 ms 20212 KiB
test_16.txt WA 47 ms 21480 KiB
test_17.txt WA 50 ms 22568 KiB
test_18.txt WA 51 ms 23464 KiB
test_19.txt WA 53 ms 24004 KiB
test_20.txt WA 56 ms 24620 KiB
test_21.txt AC 6 ms 10136 KiB
test_22.txt WA 26 ms 14452 KiB
test_23.txt WA 32 ms 16916 KiB
test_24.txt WA 39 ms 18916 KiB
test_25.txt WA 45 ms 20328 KiB
test_26.txt WA 48 ms 21368 KiB
test_27.txt WA 51 ms 22712 KiB
test_28.txt WA 52 ms 23516 KiB
test_29.txt WA 54 ms 24000 KiB
test_30.txt WA 57 ms 24628 KiB
test_31.txt AC 5 ms 8936 KiB
test_32.txt AC 4 ms 8752 KiB
test_33.txt AC 5 ms 9524 KiB
test_34.txt AC 5 ms 9388 KiB
test_35.txt AC 5 ms 9280 KiB
test_36.txt AC 5 ms 9464 KiB
test_37.txt AC 5 ms 9980 KiB
test_38.txt AC 5 ms 9872 KiB
test_39.txt AC 5 ms 9120 KiB
test_40.txt AC 5 ms 9080 KiB
test_41.txt AC 8 ms 10960 KiB
test_42.txt AC 7 ms 11148 KiB
test_43.txt AC 21 ms 16824 KiB
test_44.txt AC 22 ms 16860 KiB
test_45.txt WA 93 ms 35332 KiB
test_46.txt WA 94 ms 35300 KiB
test_47.txt WA 93 ms 35388 KiB
test_48.txt WA 92 ms 35192 KiB
test_49.txt WA 95 ms 36284 KiB
test_50.txt WA 94 ms 35292 KiB
test_51.txt AC 5 ms 8744 KiB
test_52.txt AC 4 ms 8728 KiB
test_53.txt AC 4 ms 8624 KiB
test_54.txt AC 5 ms 8752 KiB
test_55.txt AC 5 ms 8996 KiB
test_56.txt WA 5 ms 10256 KiB
test_57.txt AC 5 ms 9536 KiB
test_58.txt AC 5 ms 8792 KiB
test_59.txt WA 5 ms 8804 KiB
test_60.txt WA 5 ms 8968 KiB
test_61.txt WA 5 ms 9872 KiB
test_62.txt WA 5 ms 8836 KiB
test_63.txt WA 67 ms 26124 KiB
test_64.txt WA 74 ms 29376 KiB
test_65.txt WA 69 ms 27364 KiB
test_66.txt WA 69 ms 27500 KiB
test_67.txt WA 5 ms 9056 KiB
test_68.txt WA 5 ms 9260 KiB
test_69.txt WA 5 ms 9244 KiB
test_70.txt WA 5 ms 9288 KiB
test_71.txt WA 5 ms 9256 KiB
test_72.txt WA 5 ms 9256 KiB
test_73.txt WA 5 ms 9176 KiB
test_74.txt WA 5 ms 9164 KiB
test_75.txt WA 5 ms 9004 KiB
test_76.txt WA 5 ms 9044 KiB
test_77.txt WA 5 ms 8816 KiB
test_78.txt WA 5 ms 8876 KiB
test_79.txt AC 4 ms 8336 KiB
test_80.txt AC 4 ms 9292 KiB