Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
0 / 0 / 0
Регистрация: 30.08.2021
Сообщений: 1

Вывести путь, который нужно пройти, чтобы собрать все предметы, разбросанные по комнатам

30.08.2021, 22:24. Показов 1406. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте ребята, помогите с решением На днях задали вот такую задачку:
Напишите программу , которая выводит путь (не обязательно минимальный), который нужно пройти, чтобы собрать все предметы, разбросанные по комнатам.
На входе у вас есть стартовая комната, список комнат, список объектов.

например:
начальная комната 3

JSON
1
2
3
4
5
6
7
8
{ 
    "комнаты": [
    { "id": 1, "name": "Кухня", "north": 0, "south": 0, "est": 0, "west": 3, "objects": [{"name": "Нож"}] },
    { "id": 2, "name": "Гостевой зал", "north": 4, "south": 3, "est": 0, "west": 0, "objects": [] },
    { "id": 3, "name": "Туалет", "north": 2, "south": 0, "est": 1, "west": 0, "objects": [] },
    { "id": 4, "name": "Коридор", "north": 0, "south": 2, "est": 0, "west": 0, "objects": [{"name": "Ключи"}] }
   ]
}
предметы которые нужно собрать : Нож, Ключи

ПРИМЕР ВЫВОДА :

id...................комната............ .......предметы

3...................Туалет
1....................Кухня.............. ............Нож
3...................Туалет
2..............Гостевой зал
4..................Коридор.............. ........ Ключи



Переведено с итальянского...
насколько я понял координаты обозначают ID комнаты по соседству
Миниатюры
Вывести путь, который нужно пройти, чтобы собрать все предметы, разбросанные по комнатам   Вывести путь, который нужно пройти, чтобы собрать все предметы, разбросанные по комнатам  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.08.2021, 22:24
Ответы с готовыми решениями:

Какие предметы нужно сдавать на гиа и егэ, чтобы поступить на программиста?
Добрый вечер пользователи,я бы хотел узнать какие предметы нужно сдавать на гиа и на егэ кроме информатики чтобы поступить на программиста...

Какие предметы нужно изучать в ВУЗе для того чтобы стать специалистом по информационной безопасности ?
Какие предметы нужно изучать в ВУЗе для того чтобы стать специалистом по информационной безопасности ? и еще ... Нужно ли изучать...

Нужно, чтобы обе кнопки мыши работали с функцией Push но откидывали предметы в разные стороны
Мне понадобилось сделать что-то на подобии кликера, для этого у меня всё есть. Но мне нужно что бы предмет откидывало не только в право...

1
 Аватар для kernel_mode
70 / 47 / 16
Регистрация: 21.07.2021
Сообщений: 187
31.08.2021, 15:48
Цитата Сообщение от Reanimator003 Посмотреть сообщение
начальная комната 3
Использовать W,N,E,S заместо привычных X Y координаты было вашей идеей?

Для поиска (не оптимизированного) достаточно использовать рекурсивную функцию, которая возвращает все клетки-соседи, исключая уже отмеченные, затем повторяет эту операцию для каждой клетки до тех пор, пока не закончатся свободные (не отсеченные клетки)

Есть хорошая статья по этой теме с оптимизированным поиском и без:
https://habr.com/ru/post/331192/

Возможно, она поможет вам освежить представление об алгоритме поиска.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
31.08.2021, 15:48
Помогаю со студенческими работами здесь

В SDL2 мне нужно создать окно и туда вставить предметы, но только создается окно а предметы не додаются
И я не знаю что не так. Взял код с туториала. Нужна ваша помощь Мой код:#include "pch.h" #include "SDL.h" ...

Есть код который удаляет все пустые строки, нужно если должность 1 и ФИО заполнено чтобы не удалялось
Привет всем!) Есть код который удаляет все пустые строки, он работает. Нужно если должность одна и ФИО заполнено чтобы не удалялось. Сейчас...

Определить последовательность комнат, по которой нужно пройти что-бы пройти в n-ую и встретить меньше монстров
Есть игра под названием "qgame". Поле это лабиринт с N комнатами и M доогами между ними. Каждая i-ая дорога позволяет пройти из A в B. В...

Есть код, надо сделать так, чтобы я мог указать путь файлу, который будет установлен на рабочий. И это все надо сделать в формах
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using...

нужно удалить и вывести все символы после *(его не нужно выводить). я смог наоборот вывести всё до него! помоите
#include "stdafx.h" #include "iostream" #include "string" #include "conio.h" using namespace std; int _tmain(int argc, _TCHAR*...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
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
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru