220 2021. 03. 04 23:24:44 mraron Váltakozó (75 pont) cpp14 Elfogadva 75/75 35ms 5112 KiB
#include<bits/stdc++.h>
using namespace std;
int main() {
	string s;
	cin>>s;
	
	array<int, 26> cnt;
	fill(cnt.begin(), cnt.end(), 0);
	
	for(char c:s) cnt[c-'a']++;
	
	int n=s.size(), mx=*max_element(cnt.begin(), cnt.end());
	char last='-';
	
	if(2*mx>n+1) {
		cout<<"-1";
		return 0;
	}
	
	while(n>=1) {
		mx=*max_element(cnt.begin(), cnt.end());
		for(int i=0;i<26;++i) {
			if(last!=i+'a' && cnt[i]) {
				if(2*mx<=n || mx==cnt[i]) {
					cout<<(last=i+'a');
					cnt[i]--;
					break ;
				}
			}
		}
		
		n--;
	}
	return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 75/75
1 Elfogadva 0/0 2ms 1736 KiB
2 Elfogadva 0/0 1ms 1840 KiB
3 Elfogadva 3/3 2ms 1832 KiB
4 Elfogadva 3/3 1ms 1836 KiB
5 Elfogadva 3/3 1ms 1848 KiB
6 Elfogadva 3/3 1ms 1844 KiB
7 Elfogadva 3/3 4ms 1896 KiB
8 Elfogadva 3/3 35ms 2736 KiB
9 Elfogadva 3/3 7ms 2816 KiB
10 Elfogadva 3/3 7ms 3120 KiB
11 Elfogadva 3/3 1ms 2476 KiB
12 Elfogadva 3/3 2ms 2480 KiB
13 Elfogadva 3/3 1ms 2476 KiB
14 Elfogadva 3/3 1ms 2480 KiB
15 Elfogadva 3/3 20ms 3232 KiB
16 Elfogadva 3/3 24ms 3544 KiB
17 Elfogadva 3/3 23ms 3632 KiB
18 Elfogadva 3/3 23ms 3828 KiB
19 Elfogadva 3/3 20ms 4136 KiB
20 Elfogadva 3/3 23ms 4332 KiB
21 Elfogadva 3/3 24ms 4528 KiB
22 Elfogadva 6/6 19ms 4720 KiB
23 Elfogadva 6/6 32ms 4804 KiB
24 Elfogadva 6/6 35ms 5112 KiB