Люди, объсните мне кто-нибудь чем неверно мое решение 500-ки.
Решение:
Считаем хеши для всех подстрок, в мапе отмечаем сколько раз каждая подстрока встречается.
Затем все количества кидаем в отдельный массив и строим дерево хаффмана стандартным алгоритмом с кучей - достаем из кучи два элемента(самых маленьких), объединяем их, и кладём этот элемент снова в кучу. моё решение для теста "abbac" даёт ответ 3.4, авторское решение даёт ответ 3.6666
либо мое решение лучше чем авторское, либо оно неверно.
где ошибка?
UPD: Естественно хеши не прямо для подстрок считаю, а так чтобы строки-анаграммы имели одинаковый хеш.
UPD2: Ага, понял за что минуса, в посте скиданова спойлится хаффман, но я только сейчас дорешивал, и пост прочел только сейчас. Кстати, мне хаффман почти сразу вспомнился.