|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
|||||||||||
Реализовать алгоритм всех возможных комбинаций восьми ферзей19.05.2016, 05:11. Показов 6675. Ответов 119
Доброго времени суток! Мне стыдно задавать такой вопрос, но всё же, как реализовать алгоритм всех возможных комбинаций восьми ферзей?
Используйте исчерпывающий «лобовой» подход, т.е. попробуйте все возможные комбинации восьми ферзей на шахматной доске. Я, думаю, что как-то так: Пройтись по всем строкам и столбцам, выяснить возможно ли поставить ферзей с таких то координат, (0, 0), (0, 1), (0, 2)....(0, 7) , (1, 0) (1, 1) .... ну и так далее до (7, 7) и каждую координату обрабатывать, выясняя, если поставить первого ферзя на на эти коордитаты, то остальные семь ферзей возможно ли разместить на доске. Вот такая вот идея решения) Но решение не могу написать, функция обработки не получается почему-то... Кликните здесь для просмотра всего текста
Я уже несколько дней с этой задачей маюсь, надо всё же понять как решать подобное, не просто скопировать код, а понять как это решать, ну и подобные, соответственно.Смотрел примеры решения, но не понял код, что, куда, зачем, например
Попрошу сильно не пинать, форум насколько я понял для начинающих! Спасибо!
0
|
|||||||||||
| 19.05.2016, 05:11 | |
|
Ответы с готовыми решениями:
119
Сортировка всех возможных комбинаций 4 из 8 Создание всех возможных комбинаций английского алфавита Перебор всех возможных комбинаций |
| 19.05.2016, 05:28 | |
|
Не по теме: Только что откинулся после длинного срока, а тут какой-то до боли знакомый кот :D
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
||
| 19.05.2016, 05:37 [ТС] | ||
|
Добавлено через 2 минуты _Ivana Ты не мог бы как-то его более подробно, точнее, более детально разъяснить, скажим так, разживать
0
|
||
| 19.05.2016, 05:41 | |
|
Это функция, которая тестирует, можно ли поставить ферзя в заданные координаты, при условии, что на предыдущих столбцах уже стоят ферзи с сохранением инварианта "никто никого не бьет". Да, она на "растяжках" - используется внешний массив уже расставленных фигур до требуемого столбца - m.
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.05.2016, 05:42 | ||
|
0
|
||
| 19.05.2016, 05:45 | |
|
Mr.X, ну так я далеко не каждого кота пишу с целью понять его после долгой отсидки
Элемент некоей намеренной обфускации (но не в ущерб краткости) также имеет место быть. О мотивах - разговор отдельный. И, как видите, я таки вспомнил и понял былого кота
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
| 19.05.2016, 05:49 | |
|
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
|
| 19.05.2016, 05:57 | |
|
Ну, я тут наверно уже все задачи перерешал, про ферзей точно где-то есть, хотел сейчас найти, и обнаружил, что расширенный поиск не работает! Вообще! Никакие мои сообщения не находит! Кто-нибудь знает с чем это связано?
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
||||||||||||
| 19.05.2016, 06:02 [ТС] | ||||||||||||
![]() То что она проверяет я понял, не понял зачем параметр K, он вызывается рекурсивно для чего, чтобы условие стало истинным?
0
|
||||||||||||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.05.2016, 06:06 | ||
|
0
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
|
| 19.05.2016, 06:06 [ТС] | |
|
Рассуждения хоть верны о ходе решения поставленной задачи. За какую правду страдал, если не секрет, чтобы местные Силовые структуры не узнали)
0
|
|
| 19.05.2016, 06:08 | |
|
"Растяжки" - это на нашем зоновском жаргоне - это глобальные мутабельные переменные, доступные из любого места кода
Грязно, но для краткости сойдет. Можно было бы на лямбдах написать, с локальными растяжками, но понятнее от этого бы не стало - поверьте А так вы на правильном пути честного реверс-инжиниринга - смотрите в отладчике содержимое растяжки m и что возвращает функция при разных аргументах.
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
|
| 19.05.2016, 06:09 [ТС] | |
|
Вы о чём вообще, давно не видились что ли...
0
|
|
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||
| 19.05.2016, 06:12 | ||
|
0
|
||
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
||||||||||||
| 19.05.2016, 06:17 [ТС] | ||||||||||||
Из main вызывается только функция f(0); с аргументом 0, меня это первоначально смутило тем, что индекс должен как-то увеличиваться, а у вас всё решается как-то и без этого))) Я пробовал с рекурсией порешать, у меня ошибка переполнения стека только выпрыгивает, так что решил по старинке итеративно, но...
0
|
||||||||||||
| 19.05.2016, 06:26 | |
|
Liss29, ладно, давайте на чисто ту
Этот мой код - не самый простой для понимания новичку решения данной задачи. Но зато у вас есть 4 варианта:1) думать и писать самому 2) разбираться в деталях моей реализации 3) разобраться в АЛГОРИТМЕ моей реализации (увидеть его в коде), а детали написать самому - ту же функцию проверки расстановки 4) поискать другие примеры реализации Полная свобода выбора - смотря что вам интереснее
0
|
|
|
225 / 39 / 4
Регистрация: 18.11.2012
Сообщений: 1,631
|
||
| 19.05.2016, 06:31 [ТС] | ||
|
Добавлено через 4 минуты _Ivana Мне нужно и в вашем коде разобраться, всё же он компактен, по производительность сказать не могу, но тем неменее надо учиться писать так как вы, а не так как я написал. Думать, я уже сколько думаю, но ничего пока лучшего, чем то, что я выложил не придумал))) Разобраться и написать самому, я вначале темы так и написал.
0
|
||
|
3225 / 1752 / 436
Регистрация: 03.05.2010
Сообщений: 3,867
|
||||
| 19.05.2016, 06:39 | ||||
|
_Ivana парень умный, но его код как раз яркий пример того как писать не нужно. Программа должна быть самодокументируемой и понятной. Многие специалисты считают, что это даже важнее быстродействия и экономии памяти.
0
|
||||
| 19.05.2016, 06:39 | |
|
Помогаю со студенческими работами здесь
20
Генератор всех возможных комбинаций Генерация всех возможных комбинаций
Выбор всех возможных комбинаций из Списка
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога
Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&d=1772460536
Одним из. . .
|
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
|
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
|
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
|
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|