Задача по Python: два словарных квадрата из слов
Задача: Построение двух словарных квадратов из набора слов
Новинка
Рейтинговая работа
по дисциплине Высокоуровневые методы программирования
Задание/вариант № 8 (З)
Задание
Некоторые наборы из n слов длины n обладают интересным свойством - их можно расположить в клетках квадрата n×n так, что все слова набора можно прочитать как в вертикали, так и по горизонтали.
Примером такого набора слов является {"DATE", "FIND", "IDEA", "NEXT"}. Их можно расположить так:
Заметьте, что каждое слово можно прочитать как по горизонтали, так и по вертикали. Такие квадраты называются словарными квадратами, наибольший известный словарный квадрат в английском языке имеет размер 10×10.
Рассмотрим еще один пример словарного квадрата:
Вам даны такие 2n слов, что из них можно построить два различных словарных квадрата размера n×n. Ваша задача состоит в том, чтобы разбить эти слова на две группы, по n слов в каждой, и построить из слов каждой группы словарный квадрат.
Гарантируется, что все данные вам слова являются английскими словами (некоторые из них могут быть достаточно редкими словами, именами, или специальными терминами).
Входные данные
Первая строка входного файла INPUT.TXT содержит целое число n (2 ≤ n ≤ 10). Каждая из следующих 2n строк содержит слово, состоящее из заглавных букв английского алфавита. Каждое слово содержит ровно n букв.
Выходные данные
В выходной файл OUTPUT.TXT выведите два словарных квадрата, построенных из данных слов. Разделите квадраты пустой строкой.
Пример
Показать/скрыть дополнительное описание
по дисциплине Высокоуровневые методы программирования
Задание/вариант № 8 (З)
Задание
Некоторые наборы из n слов длины n обладают интересным свойством - их можно расположить в клетках квадрата n×n так, что все слова набора можно прочитать как в вертикали, так и по горизонтали.
Примером такого набора слов является {"DATE", "FIND", "IDEA", "NEXT"}. Их можно расположить так:
Заметьте, что каждое слово можно прочитать как по горизонтали, так и по вертикали. Такие квадраты называются словарными квадратами, наибольший известный словарный квадрат в английском языке имеет размер 10×10.
Рассмотрим еще один пример словарного квадрата:
Вам даны такие 2n слов, что из них можно построить два различных словарных квадрата размера n×n. Ваша задача состоит в том, чтобы разбить эти слова на две группы, по n слов в каждой, и построить из слов каждой группы словарный квадрат.
Гарантируется, что все данные вам слова являются английскими словами (некоторые из них могут быть достаточно редкими словами, именами, или специальными терминами).
Входные данные
Первая строка входного файла INPUT.TXT содержит целое число n (2 ≤ n ≤ 10). Каждая из следующих 2n строк содержит слово, состоящее из заглавных букв английского алфавита. Каждое слово содержит ровно n букв.
Выходные данные
В выходной файл OUTPUT.TXT выведите два словарных квадрата, построенных из данных слов. Разделите квадраты пустой строкой.
Пример
| № | INPUT.TXT | OUTPUT.TXT |
| 1 | 4 ARTS BEST CRAB DATE FIND IDEA NEXT RARE | CRAB RARE ARTS BEST FIND IDEA NEXT DATE |
Материал посвящен решению алгоритмической задачи на построение двух словарных квадратов из набора из 2n английских слов одинаковой длины. Внутри есть описание идеи, поиск с возвратом, префиксные отсечения и готовая реализация на Python. Работа подойдет студентам, изучающим программирование, структуры данных и методы перебора..
Характеристики решённой задачи
Предмет
Учебное заведение
Семестр
Просмотров
0
Размер
60,91 Kb
Список файлов
Рейтинговая работа .docx
🎓 Никольский - Помощь студентам 📚 Любые виды работ: тесты, сессии под ключ, практики, курсовые и дипломные с гарантией результата ✅ Все услуги под ключ ✅ Знаем все тонкости именно вашего ВУЗа ✅ Сдадим или вернем деньги
Комментарии
Нет комментариев
Стань первым, кто что-нибудь напишет!
МФПУ «Синергия»
nikolskypomosh














