|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.01.2014, 23:16 | #1 |
Пользователь
Регистрация: 23.04.2012
Сообщений: 82
|
Задача "Площадь комнаты"
Помогите решить задачу!
|
24.01.2014, 23:18 | #2 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
и? запустить волну (при таких смешных ограничениях пройдет без всяких ухищрений)..
|
25.01.2014, 00:11 | #3 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Решение занимает 26 строчек. Где ваши наработки?)
Poma][a, можно и без волны, чтобы не усложнять (т.е. без поиска в ширину), а простую рекурсию.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
25.01.2014, 00:11 | #4 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
А я именно про рекурсию и говорю.. обычный волновой алгоритм..
|
25.01.2014, 00:25 | #5 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Poma][a, согласен. Больше привык, когда волновой через список реализуется.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
25.01.2014, 00:26 | #6 |
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
Список? К нему, вроде, всегда очередь шла..
|
25.01.2014, 00:30 | #7 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Ой, да (хотя, если взять определение с informatics.mccme.ru: Очередь – линейный список, элементы в который добавляются только в конец, а исключаются из начала.)
Пора спать...
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
25.01.2014, 12:11 | #8 |
Пользователь
Регистрация: 23.04.2012
Сообщений: 82
|
BDA, дайте, пожалуйста, исходник этой задачи. Просто я не могу придумать алгоритм.
|
26.01.2014, 00:49 | #9 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,291
|
Алгоритм простой:
Считать размер лабиринта Считать лабиринт Считать координаты Вызвать рекурсивную функцию по этим координатам Если точка по этим координатам занята стеной, либо координаты не принадлежат лабиринту, то выйти из функции Иначе, пометить эту клетку пройденной ("построить стену"), увеличить глобальный счетчик площади (самый простой вариант; можно передавать переменную для накопления площади через var параметр или возвращать как результат функции) и вызвать функцию рекурсивно для всех клеток, соседних с рассмотренной После возвращения из функции напечатать результат UPD Не буду спорить (там и в коде примеров есть ошибки ).
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
Последний раз редактировалось BDA; 26.01.2014 в 12:55. |
26.01.2014, 10:26 | #10 | ||
Новичок
Джуниор
Регистрация: 11.10.2011
Сообщений: 3,882
|
Цитата:
Очередь, первым делом, - это Цитата:
|
||
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Постоянно слетает галочка "автоматически" в "Параметры 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 |