|
0 / 0 / 0
Регистрация: 05.12.2009
Сообщений: 103
|
|
Соединить шахматные 2 клетки кратчайшим путем коня17.03.2010, 14:57. Показов 6918. Ответов 3
Метки нет (Все метки)
ребят подскажите алгоритм и через чего лучше реализовывать, желательно предлагать самые простые варианты, подскажите пожалуста потом сделаю нароботки и чую продолжу спрашивать че да как(c++)
пример, но впроинципе можно чтоб и числами выдава, а не буквами чтоб типами хоть голову не мучать
0
|
|
| 17.03.2010, 14:57 | |
|
Ответы с готовыми решениями:
3
Определить, возможно ли с помощью фигуры коня обойти все 64 клетки поля
Поиск последовательности перемещений коня на шахматной доске из одной клетки в другую |
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
|
| 17.03.2010, 16:58 | |
Сообщение было отмечено как решение
Решение
Это поиск в ширину. Доска маленькая, поэтому можно совсем просто, без реализации очереди. Доска - это двумерный массив целых чисел. В начальную клетку ставишь значение 0, а в остальные например 100. На первом шаге смотришь в какие клетки можно попасть из начальных, и ставишь туда цифру 1. На втором просматриваешь всю доску, если встречается цифра 1, то смотришь куда можно пойти из нее, и если эта клетка имеет значение 100, то туда ставишь цифру 2. И так далее, пока на каком-либо шаге ты не сможешь сходить на конечную клетку. А потом надо будет вывести путь. В обратном порядке он ищется очень легко, просто из конечной клетки (пусть она имеет значение например 8) ищешь любую клетку, в которую можно из нее пойти, и которая имеет значение 7. Эта клетка будет последним шагом пути. Далее также рекурсивно ищешь предпоследний шаг пути (клетку со значением 6, в которую можно сходить из текущей клетки со значением 7).
3
|
|
|
0 / 0 / 0
Регистрация: 05.12.2009
Сообщений: 103
|
||||||
| 18.03.2010, 08:32 [ТС] | ||||||
Грымзик, спасибо, но вот в коде застопорился, вот я ищу где равно, 1 и вот как мне дальше написать чтоб он искал следующую свободную клетку?
0
|
||||||
|
2507 / 1483 / 37
Регистрация: 14.09.2009
Сообщений: 2,740
|
||||||
| 18.03.2010, 12:34 | ||||||
|
У Вас много ошибок и недочетов. Нельзя было выбирать число 10, поскольку вдруг потребуется больше 10 ходов, надо заведомо недостижимое число брать. Нельзя так заполнять массив int desk[8][8] = {10}; Вы бы посмотрели что получилось при этом. И прежде, чем обращаться к элементу массива, надо проверить индексы. А еще конь делает ход длиной в 2 клетки, а не 3. Заполнения массива я написала,а вывод пути уж сами сделайте.
2
|
||||||
| 18.03.2010, 12:34 | |
|
Помогаю со студенческими работами здесь
4
Определить, возможно ли попасть из одной клетки в другую одним ходом шахматного коня Найти наиболее короткий из путей от первой до второй клетки, двигаясь ходом коня в клетке шахматной доски с координатами (х,у) стоит конь. Клетки, которые находятся под боем этого коня заполн Сколькими способами можно выбрать на шахматной доске две клетки, чтобы из одной в другую можно было попасть ходом коня Ввести координаты ладьи и коня и определить, бьет ли ладья коня, если она ходит первой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|