0 / 0 / 0
Регистрация: 23.04.2021
Сообщений: 27
|
||||||
1 | ||||||
Найти самый длинный несамопересекающийся путь коня на доске 6 x 6 с помощью рекурсивного алгоритма31.05.2021, 15:08. Показов 2368. Ответов 5
Метки нет (Все метки)
Приветствую. Задача звучит следующим образом: Найти самый длинный несамопересекающийся путь коня на доске 6 x 6 с помощью рекурсивного алгоритма.
Честно, вообще нет вариантов, как это сделать. Единственное, до чего я допёр - это создать матрицу 6 x 6, заполненную 0 элементами. А дальше труба. Я понимаю, что конь может пойти у коня всего может быть 8 вариантов хождения, но как их реализовать вообще. Кроме этого, абсолютно не понимаю, как проверить путь на пересекаемость, конь же по факту сразу перемещается на клетку, а не проходит по отдельности каждую часть пути. P.S. Этот путь состоит из 17 ходов. Добавлено через 2 часа 18 минут Ребят, не уж то никто не может помочь. Я сам попытался что-то написать
Добавлено через 53 минуты Разбить каждую двойку на единицы?
0
|
31.05.2021, 15:08 | |
Ответы с готовыми решениями:
5
Дано положение коня на шахматной доске. Определить минимальный путь коня в заданную точку Найти самый длинный простой путь в графе. Найти самый длинный простой путь в графе Найти самый длинный путь от корня дерева к листьям |
458 / 294 / 191
Регистрация: 23.06.2018
Сообщений: 678
|
|
31.05.2021, 16:09 | 2 |
Честно говоря, мне с самого начала было не очень понятно что здесь значит самопересекаемость... Но судя по вашему ответу в 17 ходов, вы про это (изображение в конце страницы).
По сути, нужно просто проверять пересечение отрезков и использовась ли ранее текущая клетка.
1
|
0 / 0 / 0
Регистрация: 23.04.2021
Сообщений: 27
|
|
31.05.2021, 17:07 [ТС] | 3 |
Bleach163, ну насчёт клетки более-менее понятно, а как проверить пересечение отрезков? У меня идея сейчас - это переделка задачи про посещение конём всех клеток( как здесь Задача о ходе коня. Опять), просто разбив ход коня на 3 части. Но тогда 17 ходов никак не может выйти.
0
|
458 / 294 / 191
Регистрация: 23.06.2018
Сообщений: 678
|
|||||||||||
01.06.2021, 13:20 | 4 | ||||||||||
Сообщение было отмечено Qrote как решение
Решение
Я надеялся, что кто-нибудь даст свой вариант проверки пересечения, но раз таких нет, то будем проверять векторным произведением.
Многопоточность здесь только из-за того, что кое-кто позарился на доску 8х8, в однопоточном варианте я её проверял больше получаса. Можно было распараллелить и получше, но не хотел переделывать логику. Если многопоточность не нужна - выбросьте все библиотеки кроме первых двух, счётчик, checker и часть main'а. Собственно, код:
Кликните здесь для просмотра всего текста
1
|
458 / 294 / 191
Регистрация: 23.06.2018
Сообщений: 678
|
|
01.06.2021, 13:27 | 5 |
Путь из 35 ходов на доске 8х8.
0
|
0 / 0 / 0
Регистрация: 23.04.2021
Сообщений: 27
|
|
01.06.2021, 17:04 [ТС] | 6 |
Bleach163, Огромное Вам спасибо!!!
0
|
01.06.2021, 17:04 | |
01.06.2021, 17:04 | |
Помогаю со студенческими работами здесь
6
Алгоритм, обратный алгоритму Дейкстры (найти самый длинный путь) С помощью рекурсивного алгоритма найти корень уравнения Найти самый длинный путь от корня дерева к листьям и вернуть сумму его элементов Обход графа в ширину - минимальный путь коня на шахматной доске Построить алгоритм ходов коня по шахматной доске с помощью рекурсии Самый длинный путь в ориентированном графе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Блоги программистов | |||||
Обновление сайта www.historian.by
Reglage 05.01.2025
Обещал подвести итоги 2024 года для сайта. Однако начну с того, что изменилось за неделю. Добавил краткий урок по последовательности действий при анализе вредоносных файлов и значительно улучшил урок. . .
|
Как использовать GraphQL в C# с HotChocolate
Programming 05.01.2025
GraphQL — это современный подход к разработке API, который позволяет клиентам запрашивать только те данные, которые им необходимы. Это делает взаимодействие с API более гибким и эффективным по. . .
|
Модель полного двоичного суматора с помощью логических операций (python)
AlexSky-coder 04.01.2025
def binSum(x:list, y:list):
s=^y]
p=x and y
for i in range(1,len(x)):
s. append((x^y)^p)
p=(x and y)or(p and (x or y))
return s
x=list()
y=list()
|
Это мы не проходили, это нам не задавали...(асихронный счётчик с управляющим сигналом задержки).
Hrethgir 04.01.2025
Асинхронный счётчик на сумматорах (шестиразрядный по числу диодов на плате, но наверное разрядов будет больше - восемь или шестнадцать, а диоды на старшие), так как триггеры прошли тестирование и. . .
|
Руководство по созданию бота для Телеграм на Python
IT_Exp 04.01.2025
Боты для Телеграм представляют собой автоматизированные программы, которые выполняют различные задачи, взаимодействуя с пользователями через интерфейс мессенджера. В данной статье мы рассмотрим,. . .
|
Применение компонентов PrimeVue в Vue.js 3 на TypeScript
BasicMan 04.01.2025
Введение в PrimeVue и настройка окружения
PrimeVue представляет собой мощную библиотеку компонентов пользовательского интерфейса для Vue. js 3, которая предоставляет разработчикам богатый набор. . .
|
Как стать Senior developer
cpp_developer 04.01.2025
В современной индустрии разработки программного обеспечения позиция Senior Developer представляет собой не просто следующую ступень карьерной лестницы, а качественно новый уровень профессионального. . .
|
Что известно о дате выхода Windows 12 и чего от нее ждать
IT_Exp 04.01.2025
В мире технологий постоянно происходят изменения, и операционные системы не являются исключением. Windows 11, выпущенная в октябре 2021 года, принесла множество инноваций и улучшений, но. . .
|
Что новенького в .NET Core 9
Programming 04.01.2025
Обзор ключевых изменений в . NET Core 9
Платформа . NET Core продолжает активно развиваться, и версия 9 представляет собой значительный шаг вперед в эволюции этой технологии. Новый релиз. . .
|
Инструкция по установке python3.13.1 в Debian 12
AlexSky-coder 03.01.2025
sudo apt update
sudo apt install build-essential zlib1g-dev libncurses5-dev libgdbm-dev libnss3-dev libssl-dev libreadline-dev libffi-dev
wget. . .
|
Затестил триггеры. архив проекта прилагаю с GOA файлами в настройках архиватора проектов.
Hrethgir 03.01.2025
В этот раз нет закольцованности, потому что от неё только глюки, как я понял, логика не вырезанная. Триггеры очень быстрые если верить измерениям с помощью анализатора от Gowin.
Есть ещё регистры,. . .
|
Python в помощь DevOps
IT_Exp 03.01.2025
Причины использования Python в работе DevOps
Python стал неотъемлемой частью мира DevOps, и это не случайно. Этот язык программирования обладает множеством преимуществ, которые делают его. . .
|