|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
19.03.2014, 21:53 | #1 |
Пользователь
Регистрация: 18.09.2013
Сообщений: 23
|
(С++/С)Выход из лабиринта с помощью очереди
Лабиринт. Лабиринт задан массивом в котором элемент = 0, если клетка «проходима», и = 1, если клетка «непроходима» (задается случайным образом). Начальное положение путника указывается в проходимой клетке . Путник может перемещаться по проходимым клеткам, имеющим общую сторону. Выяснить, может ли путник выйти из лабиринта ( т.е. попасть в граничную клетку).
Решил реализовать решение с помощью очередей, в очередь я забиваю элемент снизу, сверху, слева,справа , проверяю их на наличие нуля, после чего , если элемент содержит нуль, присваиваю этому элементу "8". Все это фарширую в цикл do while , который должен повторять процедуру снова и снова, пока первый элемент в очереди будет равен "0". В итоге, вместо пути выхода из массива выложенного "8" у меня выводит обычный массив нулей и единиц с восьмеркой, в месте начала пути. Не судите строго, это мой первый код с очередью. Вопрос : "Как было бы правильней использовать очередь?" Код:
|
19.03.2014, 22:24 | #2 |
Участник клуба
Регистрация: 14.06.2011
Сообщений: 1,138
|
В общем, тебе нужен еще один массив, где хранятся посещенные клетки и при добавлении нового элемента надо определять не только возможность прохождения, но и проверять, была ли клетка посещена раньше.
|
19.03.2014, 22:50 | #3 | |
Пользователь
Регистрация: 18.09.2013
Сообщений: 23
|
Цитата:
Тем не менее все равно результат тот же.( Код:
Последний раз редактировалось mta0; 19.03.2014 в 23:08. |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Выход из лабиринта /C++ | dzels | Помощь студентам | 2 | 06.06.2013 15:14 |
С заданной целочисленной очереди организовать две: первая содержит все положительные элементы данной очереди, вторая - отрицательн | wowan30002 | Общие вопросы C/C++ | 0 | 20.11.2012 17:39 |
Кнопка Выход(на выход Из программы)С++ Напишите код | ProGec4 | Общие вопросы C/C++ | 3 | 19.02.2012 15:36 |
Алгоритм Дейкстры поиска путей в графе. Как реализовать с помощью приоритетной очереди? | Zefick | Помощь студентам | 0 | 04.06.2009 14:03 |
Выход из лабиринта | karamelka87 | Общие вопросы C/C++ | 9 | 27.01.2009 23:49 |