0 / 0 / 0
Регистрация: 03.10.2021
Сообщений: 1
|
|
1 | |
Разместить на доске минимальное количество слонов так чтобы все фигуры противника находились «под боем»03.10.2021, 04:40. Показов 1124. Ответов 8
На шахматной доске имеется N фигур противника.
Разместить на ней минимальное количество слонов так, чтобы все фигуры противника находились «под боем». Решите не сильно сложно, только с использованием iostream и простых команд.
0
|
03.10.2021, 04:40 | |
Ответы с готовыми решениями:
8
Разместить на шахматной доске минимальное количество слонов так, чтобы все фигуры противника находились "под боем" Рекурсия. Разместить на доске мин. количество коней так, чтобы все фигуры противника находились «под боем» Разместить на шахматной доске максимальное количество слонов и ладьи так, чтобы они не были "под боем" На шахматной доске имеется N фигур противника. Разместить на ней минимальное количество коней так, чтобы все Какое минимальное количество слонов можно расставить на шахматной доске так, чтобы они били все поле |
661 / 662 / 106
Регистрация: 29.05.2015
Сообщений: 3,964
|
|
03.10.2021, 08:28 | 3 |
Перебрать все пустые клетки (предположив, что на каждой стоит слон) - и найти ту (или те), на которых слон бьёт большее количество фигур - туда и ставим слона. Затем повторяем, исключив из рассмотрения уже атакованные фигуры. Когда каждый слон сможет атаковать только одну фигуру - туда его и ставим уже безальтернативно.
Ну понятно, что могут найтись фигуры, закрытые для слонов - это должно быть оговорено тех. заданием. Алгоритм дарю бесплатно.
0
|
661 / 662 / 106
Регистрация: 29.05.2015
Сообщений: 3,964
|
|
03.10.2021, 09:13 | 5 |
Никак. Для поиска гарантированного наилучшего решения нужен полный перебор вариантов, а это сами понимаете...
0
|
3249 / 1470 / 468
Регистрация: 01.06.2021
Сообщений: 4,965
|
|
03.10.2021, 10:03 | 6 |
в таком случае можно сделать так, чтобы программа вывела предупреждение о невозможности размещения слонов нужным образом. То что вы описали, не такая уж и сложная задача. Тут можно перебрать все свободные клетки, допустив, что на них стоит слон, проверяя, есть ли какая-нибудь фигура противника, которая не под боем.
Как по мне, самая сложная задача - это реализовать ввод фигур противника с помощью iostream, как того хочет ТС, а потом проверить на правильность размещения фигур на шахматной доске. Если это нормальная шахматная доска, то на ней должны обязательно быть два короля. Пешек у противника не может быть больше 8. Если же у противника нет пешек, то теоретически они могли превратиться в любую фигуру. Например, может быть такое, что у противника 10 коней (2 начальных + 8 из пешек) или 9 ферзей. Все это нужно проверить.
0
|
3249 / 1470 / 468
Регистрация: 01.06.2021
Сообщений: 4,965
|
|
03.10.2021, 10:49 | 8 |
мама Стифлера, я вас понял. В задаче о восьми ферзях тоже происходит аналогичный феминистический беспредел
0
|
Модератор
|
|
03.10.2021, 11:42 | 9 |
В легальной шахматной позиции может быть до 9 ферзей включительно у каждой из сторон.
0
|
03.10.2021, 11:42 | |
03.10.2021, 11:42 | |
Помогаю со студенческими работами здесь
9
Расположить на шахматной доске 12 коней так, чтобы все поля были под "боем" Расставить на шахматной доске 8 ферзей так, чтобы ни один из них не находился под боем другого Расставить на стандартной 64-клеточной доске 8 ферзей так, чтобы ни один из них не находился под боем другого На доске заданного размера расставить k ферзей так, чтобы ни один из них не находился под боем другого Расставить на стандартной 64-клеточной шахматной доске 8 ферзей так, чтобы ни один из них не находился под боем другого Програма на шахматной доске расставила восемь ферзей так, чтобы каждые два из них, не находились под одним столбиком Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |