152542025-02-17 18:05:25TakacsAndrasVáltakozó (75 pont)cpp17Hibás válasz 69/7517ms1688 KiB
#include <bits/stdc++.h>
using namespace std;
int main() {
    string s; cin >> s;
    vector<int> a(26);
    for (int i = 0; i < s.size(); i++) {
        if (++a[s[i]-'a'] >= s.size()/2+1) {
            cout << "-1";
            return 0;
        }
    }
    vector<int> out(s.size()+1);
    out[0] = -1;
    for (int i = 1; i <= s.size(); i++) {
        int x = 1000;
        for (int j = 0; j < 26; j++) {
            if (a[j] > 0 && out[i-1] != j && a[j] >= (s.size()-i+1)/2+1) {
                x = j;
                break;
            }
            if (a[j] > 0 && out[i-1] != j && x > j) x = j;
        }
        a[x]--;
        out[i] = x;
    }
    for (int i = 1; i <= s.size(); i++) cout << (char)(out[i]+'a');
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base69/75
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva3/31ms316 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms368 KiB
6Elfogadva3/31ms316 KiB
7Hibás válasz0/31ms316 KiB
8Hibás válasz0/36ms672 KiB
9Elfogadva3/36ms624 KiB
10Elfogadva3/36ms708 KiB
11Elfogadva3/31ms316 KiB
12Elfogadva3/31ms316 KiB
13Elfogadva3/31ms316 KiB
14Elfogadva3/31ms508 KiB
15Elfogadva3/317ms1516 KiB
16Elfogadva3/316ms1480 KiB
17Elfogadva3/317ms1668 KiB
18Elfogadva3/316ms1476 KiB
19Elfogadva3/314ms1476 KiB
20Elfogadva3/314ms1476 KiB
21Elfogadva3/314ms1632 KiB
22Elfogadva6/613ms1516 KiB
23Elfogadva6/614ms1476 KiB
24Elfogadva6/616ms1688 KiB