Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.01.2014, 23:16   #1
makskovalko
Пользователь
 
Аватар для makskovalko
 
Регистрация: 23.04.2012
Сообщений: 82
По умолчанию Задача "Площадь комнаты"

Помогите решить задачу!
Изображения
Тип файла: jpg dot.JPG (77.7 Кб, 124 просмотров)
makskovalko вне форума Ответить с цитированием
Старый 24.01.2014, 23:18   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

и? запустить волну (при таких смешных ограничениях пройдет без всяких ухищрений)..
Poma][a вне форума Ответить с цитированием
Старый 25.01.2014, 00:11   #3
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Решение занимает 26 строчек. Где ваши наработки?)
Poma][a, можно и без волны, чтобы не усложнять (т.е. без поиска в ширину), а простую рекурсию.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 25.01.2014, 00:11   #4
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

А я именно про рекурсию и говорю.. обычный волновой алгоритм..
Poma][a вне форума Ответить с цитированием
Старый 25.01.2014, 00:25   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Poma][a, согласен. Больше привык, когда волновой через список реализуется.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 25.01.2014, 00:26   #6
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Список? К нему, вроде, всегда очередь шла..
Poma][a вне форума Ответить с цитированием
Старый 25.01.2014, 00:30   #7
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Ой, да (хотя, если взять определение с informatics.mccme.ru: Очередь – линейный список, элементы в который добавляются только в конец, а исключаются из начала.)
Пора спать...
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Старый 25.01.2014, 12:11   #8
makskovalko
Пользователь
 
Аватар для makskovalko
 
Регистрация: 23.04.2012
Сообщений: 82
По умолчанию

BDA, дайте, пожалуйста, исходник этой задачи. Просто я не могу придумать алгоритм.
makskovalko вне форума Ответить с цитированием
Старый 26.01.2014, 00:49   #9
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Алгоритм простой:
Считать размер лабиринта
Считать лабиринт
Считать координаты
Вызвать рекурсивную функцию по этим координатам
Если точка по этим координатам занята стеной, либо координаты не принадлежат лабиринту, то выйти из функции
Иначе, пометить эту клетку пройденной ("построить стену"), увеличить глобальный счетчик площади (самый простой вариант; можно передавать переменную для накопления площади через var параметр или возвращать как результат функции) и вызвать функцию рекурсивно для всех клеток, соседних с рассмотренной
После возвращения из функции напечатать результат

UPD
Цитата:
Сообщение от Poma][a Посмотреть сообщение
на informatics'e идиотское определение
Не буду спорить (там и в коде примеров есть ошибки ).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )

Последний раз редактировалось BDA; 26.01.2014 в 12:55.
BDA вне форума Ответить с цитированием
Старый 26.01.2014, 10:26   #10
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Цитата:
(хотя, если взять определение с informatics.mccme.ru: Очередь – линейный список, элементы в который добавляются только в конец, а исключаются из начала
Это говорит лишь о том, что на informatics'e идиотское определение..

Очередь, первым делом, - это
Цитата:
структура данных с дисциплиной доступа к элементам «первый пришёл — первый вышел» (FIFO, First In — First Out).
А уж список ли это будет или обычный массив - это уже вопрос реализации
Poma][a вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Постоянно слетает галочка "автоматически" в "Параметры Excel", "Формулы", "Вычисления в книге" Alexsandrr Microsoft Office Excel 4 19.10.2013 14:22
Создать класс "Фигура", от него наследованием создать 3 класса ("треугольник", "четырехугольник", "окружность") funnyy Помощь студентам 3 17.10.2012 17:40
Вывести название соответствующей карты вида "шестерка бубен", "дама червей","туз треф" и т.п. воваава Помощь студентам 3 01.12.2011 12:50
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04