34 / 25 / 8
Регистрация: 16.11.2019
Сообщений: 179
|
|
Определить количество расстановок ладей на шахматной доске10.02.2020, 20:16. Показов 11766. Ответов 27
Метки нет Все метки)
(
0
|
10.02.2020, 20:16 | |
Ответы с готовыми решениями:
27
Сколькими способами можно разместить на шахматной доске восемь ладей?
Генерация списка всех возможных расстановок максимального количества ладей на доске N x N клеток |
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
10.02.2020, 21:56 | |
=88
Добавлено через 1 минуту Нет, я не прав. Погорячился. Подумать надо. ![]() Добавлено через 6 минут Похоже, что так: 2*88 - 8! Но уверенности нет...
1
|
![]() ![]() |
|
10.02.2020, 22:10 | |
8! - 8 ладей должны стоять так, чтобы попарно не бить друг друга. Каждая ладья занимает какою-то строку и какой-то столбец. Если строки перебирать по очереди 1-2-...-8, то для 1й строки можно поставить ладью в любой из 8-и столбцов, ладью во 2й строке - в любой из оставшихся 7-и столбцов и так далее.
Если придираться к условию, то ТС-у следовал бы оговорить, что ладей должно быть минимальное количество, а то так можно в каждую клетку поставить по ладье и каждая клетка будет бита, а это один способ. Если нет условия на то, что ладьи не должны бить друг друга и их минимальное количество, то да. Это уже вопрос к ТС-у, который даёт размытое условие.
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
10.02.2020, 23:07 | |
Да, есть такое дело. И я его, грешным делом, дополнил (для себя), что ладей должно быть 8. Ибо меньше не получится. Но ответ 88 неверен, потому как учитывает расстановку всех по одной горизонтали, но не учитывает ту же вертикальную расстановку. Короче, "включения-исключения" в деле. Но вот как-то уверенности нет....
![]()
0
|
Любитель математики
![]() 1493 / 1003 / 285
Регистрация: 27.01.2014
Сообщений: 3,354
|
|
10.02.2020, 23:08 | |
Если мне память не изменяет и я правильно понимаю сформулированную задачу, то ответ именно таков. Конечно, если принять, что количество ладей минимально для контроля над всеми полями шахматной доски.
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
10.02.2020, 23:15 | |
Память, не память, но интуиция подсказывает такой ответ.
Ход рассуждений. Посчитаем конфигурации, когда на каждой горизонтали одна ладья. Потом те, где по ладье на каждой вертикали. Случай не бьющихся ладей мы посчитали дважды. Но "не аккуратненько как-то" ![]()
0
|
Любитель математики
![]() 1493 / 1003 / 285
Регистрация: 27.01.2014
Сообщений: 3,354
|
|
10.02.2020, 23:36 | |
К сожалению, я ошибся. Упомянутый мной ответ относится к следующей задаче: "Сколькими способами можно расставить 8 ладей, которые не могли бы бить друг друга, на доске размера 8×8?" Однако, поскольку в данном случае нет указания, что ладьи не должны бить друг друга, то их можно расставить и в один ряд. Поэтому количество вариантов расстановки увеличивается.
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
10.02.2020, 23:40 | |
0
|
![]() 4183 / 3051 / 918
Регистрация: 19.11.2012
Сообщений: 6,196
|
|
11.02.2020, 10:38 | |
Если нет условия на количество ладей, то придется делать так.
Ясно, что на доске должно быть не менее 8 ладей (8 горизонталей должны пробиваться). Расположить 8 ладей таким способом, чтобы они били все свободные клетки можно 8! способами (на первую горизонталь ладью можно поставить 8-ю способами, на вторую - 7-ю и т.д.). Оставшиеся 56 полей можно заполнить ладьями 256 способами (поле занято или нет). Итого получается 8!*256. Если я нигде не ошибся, это и есть ответ. Вот тебе раз - клон нашелся. Смотрим и мой вариант здесь у меня получилось 8!*256 Добавлено через 28 минут Нет, таки ошибся. Некоторые варианты подсчитаны дважды и даже больше.
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
11.02.2020, 11:15 | |
А некоторые не подсчитаны вообще. Например, 8 ладей с линию.
Добавлено через 1 минуту А по поводу формулировки... Давайте ограничимся 8-ю ладьями, ибо при большем их количестве как-то в звдачке мало смысла...
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
11.02.2020, 15:09 | |
Простите, не увидел.
Вот тут-то и пропущен вариант "8 в линию" Как и многие другие. Типа
a1 b1 c2 d2 e3 f3 g2 h1 ![]() Добавлено через 19 минут Все-таки я склоняюсь к ответу 8*(222 - 7!) ![]()
0
|
Любитель математики
![]() 1493 / 1003 / 285
Регистрация: 27.01.2014
Сообщений: 3,354
|
|
11.02.2020, 15:14 | |
Я предполагаю следующее:
1) минимальное количество ладей, которое нужно расставить на обычной шахматной доске, чтобы они контролировали все поля, равно восьми; 2) восемь ладей контролируют все поля шахматной доски, если а) они расставлены по одной на каждой из восьми горизонталей (это можно сделать б) они расставлены по одной на каждой из восьми вертикалей (это можно сделать Среди указанных выше способов дважды учтены расстановки, при которых на каждой горизонтали и каждой вертикали стоит по одной ладье. Количество таких расстановок равно Если расставить восемь ладей так, чтобы хотя бы на одной горизонталям и хотя бы на одной вертикали было больше чем одна ладья, то не все поля шахматной доски будут под контролем. Следовательно, существует
1
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
11.02.2020, 15:38 | |
Посмотрите внимательнее на свои рассуждения. Мне кажется, там ошибка. Одну и ту же расстановку считаете много раз.
У вас расстановки a1 b2 и b2 a1 считаются за разные. Чтобы проверить себя, можно потренироваться на доске 3 х 3 ![]() Добавлено через 7 минут А вот этот пункт совершенно верен. И именно его мне не хватало! Спасибо!
1
|
Любитель математики
![]() 1493 / 1003 / 285
Регистрация: 27.01.2014
Сообщений: 3,354
|
|
11.02.2020, 15:40 | |
Байт,
Не по теме: нет, тренироваться я не стану: возраст уже не тот. Нужно смириться с тем, что комбинаторные задачи относятся к числу недостижимых для меня высот. :)
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
11.02.2020, 15:42 | |
angor6,
Даже на доске 2 х 2 можно убедиться. Ваши рассуждения дадут 4. А в самом деле - 6
0
|
2800 / 1846 / 202
Регистрация: 05.06.2011
Сообщений: 5,358
|
|
11.02.2020, 15:44 | |
Закину таки ещё вариант.
Разобьём варианты расстановки на три непересекающихся класса: — присутствуют пустые вертикали (в каждой горизонтали кто-нить да стоит); — присутствуют пустые горизонтали (в каждой вертикали...); — нет ни пустых вертикалей, ни горизонталей. Вариант 1, по формуле включений-исключений Поскольку Дальше — удвоить и добавить Или я не Винни-Пух. А я — он, значит, всё в порядке. Или всё же не он?
0
|
Диссидент
![]() ![]() 27710 / 17328 / 3810
Регистрация: 24.12.2010
Сообщений: 38,979
|
|
11.02.2020, 15:52 | |
Не по теме: Да ну? Готов поспорить, что я на пару годков постарше! Давайте так. Каждый год - кружка пива. Идет?:D Добавлено через 7 минут Да и никто не орет. ![]() А по делу. N1 - это ответ? ... Не, кажись ответ 2N1 + 8! , да? Но чегой-то сложно получается. И не похоже. А чем вас мой ответ не устраивает?
0
|
11.02.2020, 15:52 | ||||||
Помогаю со студенческими работами здесь
20
Расставить n ладей на шахматной доске n*n Расстановка 8 ладей на шахматной доске (рекурсивно) Расположить на шахматной доске восемь ладей
Искать еще темы с ответами Или воспользуйтесь поиском по форуму:
|
|
Новые блоги и статьи
![]() |
||||
Работа с объемным DOM в javascript
Htext 04.04.2025
Сегодня прочитал статью тут о расходах памяти в JS, ее утечках и т. п. И вот что вспомнил из своей недавней практики. Может, кому пригодится. Хотя, в той статье об этом тоже есть.
Дело в том, что я. . .
|
Оптимизация производительности Node.js с помощью кластеризации
run.dev 04.04.2025
Масштабирование приложений для обработки тысяч и миллионов запросов — обыденная задача для многих команд. Node. js, благодаря своей асинхронной событийно-ориентированной архитектуре, стал популярной. . .
|
Управление зависимостями в Python с Poetry
py-thonny 04.04.2025
Стандартный инструмент для установки пакетов в Python - pip - прекрасно справляется с базовыми сценариями: установил пакет командой pip install и используешь его. Но что произойдёт, когда разные. . .
|
Мониторинг с Prometheus в PHP
Jason-Webb 04.04.2025
Prometheus выделяется среди других систем мониторинга своим подходом к сбору и хранению метрик. В отличие от New Relic, который использует агентный подход и отправляет данные во внешнее хранилище,. . .
|
Пакет Context в Golang: Управление потоками и ресурсами
golander 04.04.2025
Работа с горутинами в Go часто напоминает управление непослушными детьми - они разбегаются кто куда, делают что хотят и не всегда завершаются вовремя. К счастью, в Go 1. 7 появился пакет context,. . .
|
Контейнеризация React приложений с Docker
Reangularity 03.04.2025
Контейнеризация позволяет упаковать приложение со всеми его зависимостями в автономный контейнер, который можно запустить на любой платформе с установленным Docker. Это существенно упрощает процессы. . .
|
Свой попап в SwiftUI
mobDevWorks 03.04.2025
SwiftUI, как декларативный фреймворк от Apple, предоставляет множество инструментов для создания пользовательских интерфейсов. В нашем распоряжении есть такие API как alerts, popovers, action sheets. . .
|
Антипаттерны микросервисной архитектуры
ArchitectMsa 03.04.2025
Хорошо спроектированная микросервисная система может выдержать испытание временем, оставаясь гибкой, масштабируемой и устойчивой к большинству проблем. Такая архитектура обладает высоким уровнем. . .
|
std::mutex в C++: Советы и примеры использования
bytestream 03.04.2025
std::mutex - это механизм взаимного исключения, который гарантирует, что критический участок кода выполняется только одним потоком в каждый момент времени. Это простое, но могущественное средство. . .
|
Не удержался от оценки концепции двигателя Стирлинга.
Hrethgir 03.04.2025
Сколько не пытался - она выдавала правильные схемы, причём случайно рисовала горячие области в середине, холодные по краям, трубки с краёв в низ и магнит в соединяющей, но при этой выдавала описание. . .
|