Математическая логика и теория алгоритмов

Содержание. 1. Постановка задачи. 2. Построение модели. 3. Описание алгоритма 4. Доказательство правильности алгоритма 5. Блок-схема алгоритма 6. Описание переменных и программа 7. Расчёт вычислительной сложности 8. Тестирование 9. Список литературы Постановка задачи. Перечислить все способы расстановки n ферзей на шахматной доске n на n, при которых они не бьют друг друга.

Построение модели

Наша программа будет рассматривать только допустимые позиции.. Чтобы не делать лишней работы, заметим вот что: если в какой-то k-пози... Эти n позиций отличаются положением ферзя на (k+1)-ой горизонтали. Будем называть k-позицией (для k = 0, 1 n) произвольную расстановку k ... Программа будет "обходить дерево" и искать их.

Описание алгоритма

Разобьем задачу на две части: (1) обход произвольного дерева и (2) реа... Будем считать, что у Робота есть команда "обработать" и что его задача... Для нашей шахматной задачи команде обработать будет соответствовать пр... {не есть_справа, ОЛН} вниз{ОЛН} Теперь решим задачу об обходе дерева, ... Условия теперь будут такими: (ОНЛ) обработаны все вершины ниже и левее...