Submission details
Task:Anagrams
Sender:suchoale
Submission time:2020-09-26 14:09:01 +0300
Language:Python3 (PyPy3)
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.50 sdetails
#2ACCEPTED2.39 sdetails
#3ACCEPTED0.77 sdetails
#4ACCEPTED2.83 sdetails
#5ACCEPTED1.12 sdetails
#6ACCEPTED1.11 sdetails
#7ACCEPTED0.05 sdetails
#8ACCEPTED0.05 sdetails
#9ACCEPTED0.05 sdetails

Code

import sys

if __name__ == '__main__':
    n = int(sys.stdin.readline())

    origin_words = list()
    sorted_words = list()
    index = list()

    for i in range(n):
        word = sys.stdin.readline().strip()
        origin_words.append(word)
        sorted_words.append(''.join(sorted(word)))
        index.append(i)

    sorted_sorted_words, index = zip(*sorted(zip(sorted_words, index)))

    anagram_group = dict()
    for i, word in enumerate(sorted_sorted_words):
        if word in anagram_group:
            anagram_group[word].append(origin_words[index[i]])
        else:
            anagram_group[word] = list()
            anagram_group[word].append(origin_words[index[i]])

    total_groups = 0
    for values in anagram_group.values():
        if len(values) > 1:
            total_groups += 1

    print(total_groups)
    for values in anagram_group.values():
        if len(values) > 1:
            print(len(values))
            for word in values:
                print(word)

Test details

Test 1

Verdict: ACCEPTED

input
68760
aakkonen
aakkosellinen
aakkosellisesti
aakkosellisuus
...

correct output
3076
2
haaraantua
raahaantua
2
...

user output
3076
2
haaraantua
raahaantua
2
...
Truncated

Test 2

Verdict: ACCEPTED

input
370099
a
aa
aaa
aah
...

correct output
30178
2
basiparachromatin
marsipobranchiata
2
...

user output
30178
2
basiparachromatin
marsipobranchiata
2
...
Truncated

Test 3

Verdict: ACCEPTED

input
100000
cnhmuewgnum
dxkmhzhetnmxadtcy
hfjqwavsiguwpludsketibe
xwxolrmvkz
...

correct output
0

user output
0

Test 4

Verdict: ACCEPTED

input
400000
vlcsa
eltwde
wdcwwkubs
tmuxbirj
...

correct output
0

user output
0

Test 5

Verdict: ACCEPTED

input
400000
ebhfigdacjlk
aecfdijlhkgb
jfekhbidacgl
cehajbidfklg
...

correct output
1
400000
abcdeighjlfk
abcdeiglhfjk
abcdfkilejgh
...

user output
1
400000
ebhfigdacjlk
aecfdijlhkgb
jfekhbidacgl
...
Truncated

Test 6

Verdict: ACCEPTED

input
400000
cbaabghadefb
hbbgfaeabdac
abaedcbgfbha
hcfadbbbeaag
...

correct output
1
400000
aaabbbcfegdh
aaabbbcfghed
aaabbbdcgfhe
...

user output
1
400000
cbaabghadefb
hbbgfaeabdac
abaedcbgfbha
...
Truncated

Test 7

Verdict: ACCEPTED

input
1
a

correct output
0

user output
0

Test 8

Verdict: ACCEPTED

input
2
ab
ba

correct output
1
2
ab
ba

user output
1
2
ab
ba

Test 9

Verdict: ACCEPTED

input
2
aa
ab

correct output
0

user output
0