|
11 / 1 / 0
Регистрация: 26.11.2018
Сообщений: 61
|
|
Реализация А* алгоритма02.06.2022, 17:07. Показов 779. Ответов 0
Здравствуйте!
Возникли проблемы с пониманием данной практической работы. Как реализовать этот алгоритм? Буду рад любой помощи. Заранее спасибо! Практическая работа - реализация алгоритма A * Описание задачи Необходимо реализовать алгоритм A * на выбранном языке программирования, чтобы решить загадку из N королев. Проблема с загадкой из N ферзей состоит в том, чтобы найти расположение N ферзей на шахматной доске размером N * N, чтобы в каждой строке, каждом столбце и каждой диагонали (например, 3 * 3 квадрата) находилось не более 5 диагоналей «» и 5 «». для одной королевы. Задача должна быть сформулирована как задача поиска, где алгоритм поиска подается в макет входной очереди и должен быть найден макет целевого состояния. Формат входных данных Решение должно иметь возможность считывать входные данные из текстового файла (UTF-8 без кодировки BOM) в следующем формате: 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 Площадь шахматных фигур представлена в виде матрицы, где: • флажки с цифрами ферзя помечены 1; • ящики без королевы отмечены 1; Количество строк и столбцов должно быть одинаковым (входные данные должны иметь матрицу N * N). Строки разделены символом конца строки "LF" ("\ n"). Столбцы разделены пробелом или символом табуляции ("\ t"). Формат выходных данных Вы должны быть в состоянии сохранить выходные данные в текстовом файле, который: • строки от 2 до N + 1 (если отсчет начинается с 1) содержат распечатку конечной позиции; • строки N + 4 - 2N + 3 содержат распечатку начальной позиции; • в строке 2N + 6 указана длина пути, необходимая для получения целевой позиции из начальной позиции; • строка 2N + 9 содержит число состояний, рассматриваемых алгоритмом A *; • в строках от 2N + 12 до 2N + 11 + длина пути содержит путь, представляющий одно действие одной фигуры ферзя в каждой строке. Королеву можно перемещать вверх / вниз, влево / вправо (при необходимости можно также использовать диагональные движения в шахматах, но рекомендуется ограничить количество действий, которые не приводят к «взрыву» функции расширения позиции). Каждый трек состоит из начальной и конечной позиции ферзя. Пример выходного формата (номера приведены только для примера): Целевой статус 0 1 0 0 0 0 0 1 1 0 0 0 0 0 1 0 Начальная позиция 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 Длина дороги 99 Условия учтены 9999 Дорога (0,0) -> (1,0) (1.0) -> (2.0) (2.0) -> (3.0) ... Будет выполнена автоматическая оценка результатов, поэтому важно, чтобы формат выходного файла был таким, как показано на рисунке. Если решения не существует, в выводе должен быть возвращен оператор (например, поле 2 * 2 не имеет решения): Нет решения этой задачи!
0
|
|
| 02.06.2022, 17:07 | |
|
Ответы с готовыми решениями:
0
Реализация расширенного алгоритма Евклида в RSA Реализация алгоритма |
| 02.06.2022, 17:07 | |
|
Помогаю со студенческими работами здесь
1
Реализация алгоритма
Реализация алгоритма сжатия (LZW) Реализация алгоритма Дугласа-Пеккера Реализация алгоритма Левенберга-Маркварда Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|
|
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
|
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
|
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
|
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2.
Данный документ берёт данные из другого нетипового документа. . .
|