Контест Middle Слайсы и мапы изнутри обновлено
Группировка анаграмм на Go
Условие
Сгруппируйте слова-анаграммы (состоят из одних и тех же букв в любом порядке). Повторяющиеся слова остаются в группе столько раз, сколько встретились.
Ввод: n (1 ≤ n ≤ 3000), затем n слов из строчных латинских букв, длина до 10.
Вывод: по группе в строке, слова внутри группы отсортированы по возрастанию, группы отсортированы по первому слову (затем по второму и т.д.).
Пример
6
eat tea tan ate nat bat
ate eat tea
bat
nat tan
Как подойти
Ключ мапы [26]byte с частотами букв; сортировка внутри групп и групп между собой.
Решите в тренажёре
Редактор с автотестами прямо в браузере. Можно решить спокойно, вслух или под таймером, как на собесе.
Предыдущий вопрос
Удаление дубликатов с сохранением порядка на Go
Следующий вопрос
Циклический сдвиг слайса на Go
Ещё по теме «Слайсы и мапы изнутри»
- Разбить слайс на части по k на Go
- Число подмассивов с суммой k на Go
- Топ-k частых слов на Go
- Что выведет Go: append при полной ёмкости
- Что выведет Go: два append в один подслайс
- Что выведет Go: массив передаётся по значению
- Что выведет Go: изменение элемента и append в функции
- Что выведет Go: удаление ключей во время range