Расстановка 5 ферзей... |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
Расстановка 5 ферзей... |
Vardes |
Сообщение
#1
|
Пионер Группа: Пользователи Сообщений: 131 Пол: Мужской Репутация: 0 |
Товарищи модераторы!!!!
Воспользовавшись поиском, я не нашёл решения своей задачи, т.к. её необходимо решить рекурсией и суть её совсем в другом... * У меня возникла такая проблема.Необходимо найти расстановку 5 ферзей, при которой каждое поле шахматной доски будет находиться под ударом хотя бы одного из них. Давным давно эта задача уже была решена, вот только програмного кода что-то нигде нет. Помогите, кто чем может... * |
Lapp |
Сообщение
#2
|
Уникум Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: 159 |
Vardes прав, задача другая. Сходство есть, но это не повод закрывать тему.. Я уже почти ответил в нее тогда - вот мой пост.
Я сначала подумал, что решение полным перебором будет слишком медленным. Но чисто из любопытства (сколько же времени это может занять) я набросал прогу. Когда писал, ничего не оптимизировал, рассматриваются абсолютно все комбинации, включая по нескольку ферзей в одной клетке (что по сути есть просто меньшее количество ферзей). Использовал далеко не самые эффективные конструкции и тешил себя мыслью, что потом будет приятно оптимизироать и смотреть, как уменьшается время счета . Но никакой оптимизации не потребовалось! Первый же вариант на моем компе (P4 1900) отстрелялся за доли секунды! Даже скучно.. Решений находит довольно много, но многие одинаковые (отбраковка одинаковых - это другая интересная задача, надо подумать). Выводит: - положение ферзей в обычной шахматной нотации: - положение ферзей (обозначены номерами) на поле: - поле, заполненное цифрами, означающими какой по счету ферзь (последний) бьет это поле. Так что я был немного разочарован . Но когда я задал поиск с доской 10х10 при 8 ферзях - я зачаровался обратно.. Как грится - enjoy! program Queens; -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Shashlyk |
Сообщение
#3
|
Новичок Группа: Пользователи Сообщений: 38 Пол: Мужской Репутация: 0 |
Vardes прав, задача другая. Сходство есть, но это не повод закрывать тему.. Я уже почти ответил в нее тогда - вот мой пост. Я сначала подумал, что решение полным перебором будет слишком медленным. Но чисто из любопытства (сколько же времени это может занять) я набросал прогу. Когда писал, ничего не оптимизировал, рассматриваются абсолютно все комбинации, включая по нескольку ферзей в одной клетке (что по сути есть просто меньшее количество ферзей). Использовал далеко не самые эффективные конструкции и тешил себя мыслью, что потом будет приятно оптимизироать и смотреть, как уменьшается время счета . Но никакой оптимизации не потребовалось! Первый же вариант на моем компе (P4 1900) отстрелялся за доли секунды! Даже скучно.. Решений находит довольно много, но многие одинаковые (отбраковка одинаковых - это другая интересная задача, надо подумать). Выводит: - положение ферзей в обычной шахматной нотации: - положение ферзей (обозначены номерами) на поле: - поле, заполненное цифрами, означающими какой по счету ферзь (последний) бьет это поле. Так что я был немного разочарован . Но когда я задал поиск с доской 10х10 при 8 ферзях - я зачаровался обратно.. Как грится - enjoy! program Queens; Скажите Пожалуйста, какой алгоритм вы использовали при написании данного кода? Сообщение отредактировано: Shashlyk - |
Текстовая версия | 2.06.2024 12:25 |