18. Лестница слов#
| 🎯 Уровень | 🔴 Senior |
| 🔗 Источник | LeetCode 127 — Word Ladder |
| 📊 Сложность | Hard |
| 🏷️ Темы | BFS |
📝 Условие#
За шаг можно изменить одну букву, получая слово из словаря. За сколько шагов из beginWord получить endWord?
Совет
На LeetCode
mainне нужен: данные приходят аргументами метода классаSolution.
Формат ниже — для запуска у себя черезcin/cout.
📥 Входные данные#
В первой строке два слова beginWord и endWord. Во второй — число n. Далее n строк — слова словаря (все слова одной длины, строчные буквы).
📤 Выходные данные#
Одно число — количество слов в кратчайшей цепочке от beginWord до endWord (включая оба), или 0.
🧪 Тесты#
Тест 1#
Ввод:
hit cog
6
hot
dot
dog
lot
log
cog
Вывод:
5
Тест 2#
Ввод:
hit cog
5
hot
dot
dog
lot
log
Вывод:
0
Тест 3#
Ввод:
a c
3
a
b
c
Вывод:
2
Заметка
Оригинальное условие и проверка решения на всех тестах — по ссылке на источник.
💡 Подсказка#
Открыть, если застрял(а) больше чем на 20 минут
BFS по словам, соседей генерируйте заменой каждой буквы.