![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() |
xxx000 |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
Лабиринт размером M x N состоит из комнат размером 1 x 1 и стен размером 1 x 1. Дан план лабиринта, на котором цифрой 1 отмечены стены, а цифрой 0 - комнаты.
Выяснить, сможет ли человек выйти из лабиринта, если его поместить в комнату с координатами (A, B)? Порядок ввода исходных данных: M N p11 p12 ... p1N p21 p22 ... p2N . . . pM1 pM2 ... pMN A B Здесь M - количество строк на рисунке плана, N - количество столбцов на рисунке плана, p(i, j) - цифра ноль или один, соответствующая клетке плана с координатами i, j. A, B - координаты человека в лабиринте. Порядок вывода результатов: Да | Нет Пример ввода: 10 10 1 1 1 1 1 1 1 1 0 1 1 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 1 0 0 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 1 1 2 2 Пример вывода: Да Эту задачу надо решать рекурсией?? Сообщение отредактировано: xxx000 - 14.07.2010 19:14 |
![]() ![]() |
TarasBer |
![]()
Сообщение
#2
|
![]() Злостный любитель ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 755 Пол: Мужской Репутация: ![]() ![]() ![]() |
> А как без рекурсии, рекурсией она по времени не проходит.
Рекурсия - самый быстрый способ обхода, вообще-то. Просто не надо обходить клетки, в которых уже был. -------------------- |
Lapp |
![]()
Сообщение
#3
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Рекурсия - самый быстрый способ обхода, вообще-то. Несколько странное утверждение. Рекурсия не есть алгоритм. Это всего лишь способ программирования. И рекурсию, как и явные итерации, можно проводить по-разному.. Хотя, я не стану утверждать, что этот способ не имеет обратного влияния на алгоритм. Но, безусловно, постоянные вызовы поцедур и дерганье стека, сильно замедляет программу (и ест память). Впрочем, все эти разговоры все равно никому не нужны. Автор темы больше не покажется, проверено. До следующей "рдачи" (С), в которой он снова не даст достаточно данных.. )) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 20.07.2025 2:59 |