![]() |
|
![]() ![]() ![]() |
|
Михаил1 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 7.4.2009 Репутация: 1 Всего: 1 |
такая вот задачка:
Ферзь находится на поле A1 шахматной доски. Необходимо найти замкнутый маршрут из 14 ходов, обеспечивающий прохождение всех полей доски. При этом любые поля допускается проходить более одного раза. Подскажите, пожалуйста, бьюсь уже долго, но в Прологе новичок, а задание скоро сдавать ![]() Вот такой вариант обхода могу предложить http://golovolomka.hobby.ru/books/gik/04.shtml Заранее спасибо Это сообщение отредактировал(а) Михаил1 - 8.4.2009, 20:26 |
|||
|
||||
Михаил1 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 7.4.2009 Репутация: 1 Всего: 1 |
Вот консольное решение задачи в VIP7.2. Использовано две эвристики:
1) Обход доски только противосолонь. 2) На каждом отрезке ломаной необходимо проходить не менее трёх новых клеток. Время решения ~0 сек.
При наложенных ограничениях найдено два решения. Для нахождения первого решения понадобилось всего 64 шага, для второго - аж 745 шагов: Счётчик=64 Путь: [1,1,8,1,8,8,2,2,8,2,2,8,2,4,6,8,3,8,7,4,7,8,2,3,6,3,1,8,1,1] Счётчик=745 Путь: [1,1,8,1,8,8,3,3,7,3,2,8,2,4,6,8,3,8,7,4,7,8,1,2,7,2,1,8,1,1] А можете подсказать, как ее переделать под SWI-Prolog? |
|||
|
||||
Михаил1 |
|
||||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 7.4.2009 Репутация: 1 Всего: 1 |
SWI вариант:
В общем, во всем разобрался сам, всем ОГРОМНОЕ спасибо за активнейшую помощь))) |
||||
|
|||||
![]() ![]() ![]() |
Правила форума Prolog | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Void. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Prolog | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |