|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
30.04.2017, 12:11 | #1 |
Пользователь
Регистрация: 22.10.2014
Сообщений: 13
|
Помогите с описанием методов решения и описанием программы
% будем искать решение как набор 8 координат вида X/Y каждого из ферзей
% при этом понятно, что поскольку все вертикали так или иначе будут заняты % задача сводится к отысканию соответствующих Y - координат getSolution(S):- S=[1/_,2/_,3/_,4/_,5/_,6/_,7/_,8/_], solution(S). % доска 0x0 без ферзей очевидно является решением solution([]). % доска NxN является решением, если является решением её под-доска (N-1)*(N-1), % а первый ферзь не бьет ферзей на этой под-доске. solution([X/Y | Others]) :- solution(Others), member(Y, [1, 2, 3, 4, 5, 6, 7, 8]), nokill(X/Y, Others). % очевидно что ферзь с любыми координатами не бьет ферзей из пустого массива, % поскольку просто некого бить nokill(_, []). % ферзь не бьет набор ферзей если он не бьет первого ферзя из набора % и не бьет остальных ферзей набора nokill(X/Y, [X1/Y1 | Others]) :- Y =\= Y1, % на разных горизонталях Y1-Y =\= X1-X, % на разных диагоналях Y1-Y =\= X-X1, nokill(X/Y, Others). * This source code was highlighted with Source Code Highlighter. |
30.04.2017, 12:19 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
чот какой-то унылый хайлайтер, ничего не захайлайтил
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Помогите разобраться с описанием кода программы | hakusan_90 | Общие вопросы Delphi | 0 | 22.04.2015 17:30 |
Проблема с описанием события | Программистик | Помощь студентам | 0 | 14.10.2012 14:48 |
Проблема с описанием типа в public | Trikster | Общие вопросы Delphi | 9 | 20.05.2012 17:41 |
программа с описанием и блок-схемой | Shaak | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 29.12.2008 16:10 |