7 / 7 / 2
Регистрация: 25.03.2013
Сообщений: 73
1

Вывести все возможные способы расстановки n тур (бьют по вертикали или горизонтали) на шахматной доске

26.04.2014, 07:53. Показов 790. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Есть задача:
нужно вывести все возможные способы расстановки n тур (бьют по вертикали или горизонтали) на шахматной доске (n*n). Задачу нужно решить методом поиска с возвращением. Желательно разбить всё по процедурам и функциям как-можно детальнее. Учитель показывал алгоритмом, но не запомнил его. Там было, на примере n=3: есть 2 указателя (x,y) , сначала они x=1 y=1 , проверяем ячейку [1,1] (отдельная функция), если можно поставить, то ставим, дальше x на единицу увеличить, а y:=1 , дальше перебираем: [2,1], не подходит, увеличиваем y на 1, [2,2], подходит ставим, x:=x+1, y:=1. Перебираем и ставим на [3,3] , дальше, когда выходим указателем x за пределы доски(3х3), то есть когда после x:=x+1 x стает 4 выводим получившеюся последовательность просто выводя номера строк или столпцов , в которых есть тура. Далее ставим x:=x-1, а y на единицу больше, чем значение y туры в столпце x, то есть (3,3), а y:=3+1=4. Проверяем, можно ли поставить на [x=3,y=4], нельзя, то х:=х-1=2, а y в столпце x=2 над турой, то есть y=3, проверили (2,3) , там уже забыл. Помогите, пожалуйста!
Спасибо всем за помощь!

Добавлено через 9 часов 28 минут
Up!

Добавлено через 8 часов 3 минуты
Подскажите продолжение алгоритма или ссылку на него.

Добавлено через 1 час 37 минут
up!

Добавлено через 13 часов 43 минуты
Ап!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2014, 07:53
Ответы с готовыми решениями:

Получите все расстановки 8 ладей на шахматной доске
Получите все расстановки 8 ладей на шахматной доске , при которых ни одна ладья не угрожает другой

Получить все расстановки 8 ладей на шахматной доске, при которых ни одна ладья не угрожает другой
Помогите решить 10 задач а то мне уже все мозги вынесли эти задачи ну решите пожалуйста сколько...

Перечислить все расстановки N ферзей на шахматной доске NxX, при которых они не бьют друг друга
Задача: Перечислить все расстановки N ферзей на шахматной доске NxX, при которых они не бьют друг...

На шахматной доске расставлены три фигуры. Определить бьют они друг друга или нет
На шахматной доске расставлены три фигуры. Используя стандартные правила игры узнать бьют они друг...

0
26.04.2014, 07:53
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.04.2014, 07:53
Помогаю со студенческими работами здесь

Получить все расстановки 8 ладей на шахматной доске
Написать программу, которая получает все расстановки 8 ладей на шахматной доске, при которых ни...

На шахматной доске стоят черный король и белые ладья и слон (ладья бьет по горизонтали и вертикали, слон – по
Помогите решить проблему error C2668: fabs: неоднозначный вызов перегруженной функции На...

Расставить 8 ферзей на шахматной доске 8 на 8, которые не бьют друг друга
Нужно написать программу которая расставляет на шахматной доске 8 ферзей, которые не бьют друг...

Заданы координаты короля и ладьи на шахматной доске определить бьют ли фигуры друг друга
заданы координаты короля и ладьи на шахматной доске определить бьют ли фигуры друг друга весь код в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru