#!/usr/bin/env python3
"""
Читаешь слово из файла, сортируешь в нём буквы, получаются последовательность
(одинаковая для анаграмм). Ищешь такую последовательность в словаре
letters_sequences. Если нет, то добавляешь слово в список met_first, а
последовательность в словарь ключом, со значением индекса этого слова в списке.
Если такая последовательность в словаре есть, то слово-анаграмма уже
встречалось, добавляешь его в met_second с индексом первого слова.
"""
letters_sequences = {}
met_first = []
met_second = []
current_index = 0
with open('test/anagr.txt', 'r') as f:
for word in f.read().split():
word_letters = ''.join(sorted(word))
if word_letters not in letters_sequences:
met_first.append(word)
letters_sequences[word_letters] = current_index
current_index += 1
else:
met_second.insert(letters_sequences[word_letters], word) #сломается здесь
print(letters_sequences)
print(met_first)
print(met_second)
IyEvdXNyL2Jpbi9lbnYgcHl0aG9uMyAKIiIiCtCn0LjRgtCw0LXRiNGMINGB0LvQvtCy0L4g0LjQtyDRhNCw0LnQu9CwLCDRgdC+0YDRgtC40YDRg9C10YjRjCDQsiDQvdGR0Lwg0LHRg9C60LLRiywg0L/QvtC70YPRh9Cw0Y7RgtGB0Y8gINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjCAKKNC+0LTQuNC90LDQutC+0LLQsNGPINC00LvRjyDQsNC90LDQs9GA0LDQvNC8KS4g0JjRidC10YjRjCDRgtCw0LrRg9GOINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjCDQsiDRgdC70L7QstCw0YDQtSAKbGV0dGVyc19zZXF1ZW5jZXMuINCV0YHQu9C4INC90LXRgiwg0YLQviDQtNC+0LHQsNCy0LvRj9C10YjRjCDRgdC70L7QstC+INCyINGB0L/QuNGB0L7QuiBtZXRfZmlyc3QsINCwIArQv9C+0YHQu9C10LTQvtCy0LDRgtC10LvRjNC90L7RgdGC0Ywg0LIg0YHQu9C+0LLQsNGA0Ywg0LrQu9GO0YfQvtC8LCDRgdC+INC30L3QsNGH0LXQvdC40LXQvCDQuNC90LTQtdC60YHQsCDRjdGC0L7Qs9C+INGB0LvQvtCy0LAg0LIg0YHQv9C40YHQutC1LgrQldGB0LvQuCDRgtCw0LrQsNGPINC/0L7RgdC70LXQtNC+0LLQsNGC0LXQu9GM0L3QvtGB0YLRjCDQsiDRgdC70L7QstCw0YDQtSDQtdGB0YLRjCwg0YLQviDRgdC70L7QstC+LdCw0L3QsNCz0YDQsNC80LzQsCDRg9C20LUgCtCy0YHRgtGA0LXRh9Cw0LvQvtGB0YwsINC00L7QsdCw0LLQu9GP0LXRiNGMINC10LPQviDQsiBtZXRfc2Vjb25kINGBINC40L3QtNC10LrRgdC+0Lwg0L/QtdGA0LLQvtCz0L4g0YHQu9C+0LLQsC4KIiIiCgoKbGV0dGVyc19zZXF1ZW5jZXMgPSB7fQptZXRfZmlyc3QgPSBbXQptZXRfc2Vjb25kID0gW10KY3VycmVudF9pbmRleCA9IDAKCndpdGggb3BlbigndGVzdC9hbmFnci50eHQnLCAncicpIGFzIGY6CiAgICBmb3Igd29yZCBpbiBmLnJlYWQoKS5zcGxpdCgpOgogICAgICAgIHdvcmRfbGV0dGVycyA9ICcnLmpvaW4oc29ydGVkKHdvcmQpKQogICAgICAgIGlmIHdvcmRfbGV0dGVycyBub3QgaW4gbGV0dGVyc19zZXF1ZW5jZXM6CiAgICAgICAgICAgIG1ldF9maXJzdC5hcHBlbmQod29yZCkKICAgICAgICAgICAgbGV0dGVyc19zZXF1ZW5jZXNbd29yZF9sZXR0ZXJzXSA9IGN1cnJlbnRfaW5kZXgKICAgICAgICAgICAgY3VycmVudF9pbmRleCArPSAxCiAgICAgICAgZWxzZToKICAgICAgICAgICAgbWV0X3NlY29uZC5pbnNlcnQobGV0dGVyc19zZXF1ZW5jZXNbd29yZF9sZXR0ZXJzXSwgd29yZCkgI9GB0LvQvtC80LDQtdGC0YHRjyDQt9C00LXRgdGMCgpwcmludChsZXR0ZXJzX3NlcXVlbmNlcykKcHJpbnQobWV0X2ZpcnN0KQpwcmludChtZXRfc2Vjb25kKQ==