Task: | Dynamic duo |
Sender: | kyy-kol |
Submission time: | 2017-05-27 12:15:34 +0300 |
Language: | C++ |
Status: | READY |
Result: | ACCEPTED |
test | verdict | time | |
---|---|---|---|
#1 | ACCEPTED | 0.06 s | details |
#2 | ACCEPTED | 0.06 s | details |
#3 | ACCEPTED | 0.03 s | details |
#4 | ACCEPTED | 0.07 s | details |
#5 | ACCEPTED | 0.03 s | details |
#6 | ACCEPTED | 0.06 s | details |
#7 | ACCEPTED | 0.05 s | details |
#8 | ACCEPTED | 0.04 s | details |
#9 | ACCEPTED | 0.05 s | details |
#10 | ACCEPTED | 0.06 s | details |
#11 | ACCEPTED | 0.04 s | details |
#12 | ACCEPTED | 0.05 s | details |
#13 | ACCEPTED | 0.05 s | details |
#14 | ACCEPTED | 0.04 s | details |
#15 | ACCEPTED | 0.05 s | details |
#16 | ACCEPTED | 0.04 s | details |
#17 | ACCEPTED | 0.05 s | details |
#18 | ACCEPTED | 0.04 s | details |
#19 | ACCEPTED | 0.05 s | details |
#20 | ACCEPTED | 0.05 s | details |
#21 | ACCEPTED | 0.07 s | details |
#22 | ACCEPTED | 0.04 s | details |
#23 | ACCEPTED | 0.06 s | details |
#24 | ACCEPTED | 0.06 s | details |
#25 | ACCEPTED | 0.06 s | details |
#26 | ACCEPTED | 0.05 s | details |
#27 | ACCEPTED | 0.04 s | details |
#28 | ACCEPTED | 0.05 s | details |
#29 | ACCEPTED | 0.04 s | details |
#30 | ACCEPTED | 0.05 s | details |
#31 | ACCEPTED | 0.05 s | details |
#32 | ACCEPTED | 0.03 s | details |
#33 | ACCEPTED | 0.05 s | details |
#34 | ACCEPTED | 0.04 s | details |
#35 | ACCEPTED | 0.05 s | details |
#36 | ACCEPTED | 0.04 s | details |
#37 | ACCEPTED | 0.03 s | details |
#38 | ACCEPTED | 0.04 s | details |
#39 | ACCEPTED | 0.06 s | details |
#40 | ACCEPTED | 0.05 s | details |
#41 | ACCEPTED | 0.05 s | details |
#42 | ACCEPTED | 0.04 s | details |
#43 | ACCEPTED | 0.05 s | details |
#44 | ACCEPTED | 0.12 s | details |
#45 | ACCEPTED | 0.11 s | details |
#46 | ACCEPTED | 0.11 s | details |
#47 | ACCEPTED | 0.17 s | details |
Compiler report
input/code.cpp: In function 'int main()': input/code.cpp:23:34: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for (int i = 0; i < s.size()/2; ++i) { ^
Code
#include <iostream> #include <map> using namespace std; int cc[26]; multimap<int, int> ca; int main() { ios::sync_with_stdio(0); cin.tie(0); string s; cin >> s; if (s.size()%2) { cout << -1 << endl; return 0; } string a, b; for (char c : s) { cc[c-'A']++; } for (int ci = 0; ci < 26; ++ci) { if (cc[ci]) ca.insert({cc[ci], ci}); } for (int i = 0; i < s.size()/2; ++i) { if (ca.size()<2) { cout << -1 << endl; return 0; } int q = (--ca.end())->second; ca.erase(--ca.end()); int w = (--ca.end())->second; ca.erase(--ca.end()); a.push_back(q+'A'); b.push_back(w+'A'); cc[w]--; cc[q]--; if (cc[w]) ca.insert({cc[w], w}); if (cc[q]) ca.insert({cc[q], q}); } cout << a << endl; cout << b << endl; }
Test details
Test 1
Verdict: ACCEPTED
input |
---|
BA |
correct output |
---|
A B |
user output |
---|
B A |
Test 2
Verdict: ACCEPTED
input |
---|
AA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 3
Verdict: ACCEPTED
input |
---|
CAAB |
correct output |
---|
AA BC |
user output |
---|
AA CB |
Test 4
Verdict: ACCEPTED
input |
---|
BABA |
correct output |
---|
AA BB |
user output |
---|
BB AA |
Test 5
Verdict: ACCEPTED
input |
---|
BBCCAA |
correct output |
---|
AAB BCC |
user output |
---|
CAA BCB |
Test 6
Verdict: ACCEPTED
input |
---|
AAAB |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 7
Verdict: ACCEPTED
input |
---|
BAABAC |
correct output |
---|
AAA BBC |
user output |
---|
AAA BBC |
Test 8
Verdict: ACCEPTED
input |
---|
ABABAB |
correct output |
---|
AAA BBB |
user output |
---|
BBB AAA |
Test 9
Verdict: ACCEPTED
input |
---|
BCBACAAB |
correct output |
---|
AAAB BBCC |
user output |
---|
BBCC AABA |
Test 10
Verdict: ACCEPTED
input |
---|
AAAA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 11
Verdict: ACCEPTED
input |
---|
AABCAA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 12
Verdict: ACCEPTED
input |
---|
AAABBA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 13
Verdict: ACCEPTED
input |
---|
BBAACCAA |
correct output |
---|
AAAA BBCC |
user output |
---|
AAAA CBBC |
Test 14
Verdict: ACCEPTED
input |
---|
ABAACBBA |
correct output |
---|
AAAA BBBC |
user output |
---|
AAAA BBBC |
Test 15
Verdict: ACCEPTED
input |
---|
BBCCABAAAC |
correct output |
---|
AAAAB BBCCC |
user output |
---|
AAACC CBBAB |
Test 16
Verdict: ACCEPTED
input |
---|
BAAABABB |
correct output |
---|
AAAA BBBB |
user output |
---|
BBBB AAAA |
Test 17
Verdict: ACCEPTED
input |
---|
CBBACABBAA |
correct output |
---|
AAAAB BBBCC |
user output |
---|
BBBCC AAABA |
Test 18
Verdict: ACCEPTED
input |
---|
BCACBAACBABC |
correct output |
---|
AAAABB BBCCCC |
user output |
---|
CAAACC BCBBAB |
Test 19
Verdict: ACCEPTED
input |
---|
AAAABA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 20
Verdict: ACCEPTED
input |
---|
BAAAACBA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 21
Verdict: ACCEPTED
input |
---|
BBAAAABA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 22
Verdict: ACCEPTED
input |
---|
BAACCBABAA |
correct output |
---|
AAAAA BBBCC |
user output |
---|
AAAAA BBCCB |
Test 23
Verdict: ACCEPTED
input |
---|
BABACAABAB |
correct output |
---|
AAAAA BBBBC |
user output |
---|
AAAAA BBBBC |
Test 24
Verdict: ACCEPTED
input |
---|
CCAABBABCBAA |
correct output |
---|
AAAAAB BBBCCC |
user output |
---|
AAAABB BBCCAC |
Test 25
Verdict: ACCEPTED
input |
---|
AABBAAABBB |
correct output |
---|
AAAAA BBBBB |
user output |
---|
BBBBB AAAAA |
Test 26
Verdict: ACCEPTED
input |
---|
BABAACACBBAB |
correct output |
---|
AAAAAB BBBBCC |
user output |
---|
BBBBCC AAAABA |
Test 27
Verdict: ACCEPTED
input |
---|
AABBBCCABCABAC |
correct output |
---|
AAAAABB BBBCCCC |
user output |
---|
BBCCCBB AABAACA |
Test 28
Verdict: ACCEPTED
input |
---|
AAAAAA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 29
Verdict: ACCEPTED
input |
---|
AABACAAA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 30
Verdict: ACCEPTED
input |
---|
BAAABAAA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 31
Verdict: ACCEPTED
input |
---|
ABAABAACAC |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 32
Verdict: ACCEPTED
input |
---|
AAAABACBBA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 33
Verdict: ACCEPTED
input |
---|
BABCCBAACAAA |
correct output |
---|
AAAAAA BBBCCC |
user output |
---|
AAAAAA CBBCCB |
Test 34
Verdict: ACCEPTED
input |
---|
BBBAAAABAA |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 35
Verdict: ACCEPTED
input |
---|
ABBABBAAACCA |
correct output |
---|
AAAAAA BBBBCC |
user output |
---|
AAAAAA BBBCCB |
Test 36
Verdict: ACCEPTED
input |
---|
BCACABBACACABA |
correct output |
---|
AAAAAAB BBBCCCC |
user output |
---|
AAAAABB CBBCCAC |
Test 37
Verdict: ACCEPTED
input |
---|
BAABCBAAAABB |
correct output |
---|
AAAAAA BBBBBC |
user output |
---|
AAAAAA BBBBBC |
Test 38
Verdict: ACCEPTED
input |
---|
ABBAACCABBCABA |
correct output |
---|
AAAAAAB BBBBCCC |
user output |
---|
AAAAABB BBBCCAC |
Test 39
Verdict: ACCEPTED
input |
---|
ABCACCBABBAACABC |
correct output |
---|
AAAAAABB BBBCCCCC |
user output |
---|
AAACCCAA CBBABBCB |
Test 40
Verdict: ACCEPTED
input |
---|
ABBBAAABBABA |
correct output |
---|
AAAAAA BBBBBB |
user output |
---|
BBBBBB AAAAAA |
Test 41
Verdict: ACCEPTED
input |
---|
AAACAABBCABBBB |
correct output |
---|
AAAAAAB BBBBBCC |
user output |
---|
BBBBBCC AAAAABA |
Test 42
Verdict: ACCEPTED
input |
---|
BCBBBCAABABCCAAA |
correct output |
---|
AAAAAABB BBBBCCCC |
user output |
---|
BBBCCCBB AAABAACA |
Test 43
Verdict: ACCEPTED
input |
---|
BBCBAABACCCBAACACB |
correct output |
---|
AAAAAABBB BBBCCCCCC |
user output |
---|
CAAACCCAA BCBBABBCB |
Test 44
Verdict: ACCEPTED
input |
---|
BBABBABABAABAAABBAAABBBBBBAABB... |
correct output |
---|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA... |
user output |
---|
BBBBBBBBBBBBBBBBBBBBBBBBBBBBBB... |
Test 45
Verdict: ACCEPTED
input |
---|
AAAABABABBBBABAABBBABBBBBABBAB... |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 46
Verdict: ACCEPTED
input |
---|
ABBBAABAABAAABBAAAAABBBABAAAAB... |
correct output |
---|
-1 |
user output |
---|
-1 |
Test 47
Verdict: ACCEPTED
input |
---|
XOQPQRNTLADFTEQSZYBMIRXWHSQDCM... |
correct output |
---|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAA... |
user output |
---|
QQQQQQQQQQQQQQQQQQQQQQQQQQQQQQ... |