|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
13.07.2012, 12:32 | #1 |
Новичок
Джуниор
Регистрация: 13.07.2012
Сообщений: 4
|
Подсчет объектов на клетчатом поле
Здравствуйте. Уже очень много времени сижу над одной задачей, никак не могу ее решить. Кто-нибудь может помочь? или хотя бы намекнуть как решать ее?
5. На клетчатом поле размером n×n клеток расположены прямоугольные объекты, ориентированные по вертикали или по горизонтали. На входе программы задается значение для n, а затем n2 числовых значений для клеток поля. Число 0 означает незанятую клетку, число 1 – клетку, занятую объектом. Один объект занимает подряд по вертикали и горизонтали несколько клеток. Объекты не накладываются друг на друга и не соприкасаются. Найти и вывести количество горизонтальных, вертикальных и квадратных объектов (у горизонтальных объектов ширина больше высоты, у вертикальных – наоборот). |
13.07.2012, 13:14 | #2 |
В прострации
Форумчанин
Регистрация: 13.01.2009
Сообщений: 239
|
Создаёте поле (n+1)x(n+1), это нужно для того, чтобы вокруг поля с фигурами было дополнительное пространство, заполненное нулями.
Алгоритм такой: Идём по полю, если встречаем верхний левый угол фигуры, то считаем её длину по вертикали и горизонтали. Код:
Пол-жизни сидючи, в монитор глядючи...
|
13.07.2012, 13:38 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Last, +1
а вообще, ничто не ново под луной.. вот этой теме "МИННОЕ ПОЛЕ В Delphi" приведено пару рабочих решений... |
13.07.2012, 13:49 | #4 | |
Новичок
Джуниор
Регистрация: 13.07.2012
Сообщений: 4
|
Цитата:
|
|
13.07.2012, 13:50 | #5 | ||
В прострации
Форумчанин
Регистрация: 13.01.2009
Сообщений: 239
|
Цитата:
Цитата:
Пол-жизни сидючи, в монитор глядючи...
Последний раз редактировалось Last; 13.07.2012 в 13:54. |
||
13.07.2012, 14:07 | #6 |
Новичок
Джуниор
Регистрация: 13.07.2012
Сообщений: 4
|
Дак, а что разве "П" - это не прямоугольный объект? есть 2 прямых угла, это судя по двум "ногам" вертикальный объект. походу у меня не лады с пониманием условия ((
п.с. пишу на паскале )) но ваш подход понятен, спасибо! |
13.07.2012, 14:13 | #7 | ||
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
Цитата:
Цитата:
|
||
13.07.2012, 21:51 | #8 |
Старожил
Регистрация: 08.04.2012
Сообщений: 3,229
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подсчет объектов на бинарном изображении | Servent | Помощь студентам | 0 | 12.05.2012 11:32 |
Создание и уничтожение объектов. Время жизни объектов C++/C# | Anett// | Помощь студентам | 0 | 24.10.2011 23:26 |
Java а квадратном клетчатом листе бумаги размерами 100х100 нарисовано несколько прямоугольников. подсчитать сколько. | Marisa21 | Помощь студентам | 1 | 20.06.2011 05:41 |
Подсчет текущего количества GUI объектов | N-Cat | Win Api | 7 | 25.02.2011 16:15 |
движение объектов в поле Chart | weezmei | Помощь студентам | 0 | 22.05.2010 01:09 |