Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.17;
Скачать: CL | DM;

Вниз

Помагите   Найти похожие ветки 

 
nika_ufc ©   (2002-10-06 14:23) [0]

задача такая: дана матрица, заполнена ноликами и единицами. моя программа должна найти и напечатать сколько прямоугольников в матрицею пример
10000
10011
00011
00000
11100
ответ: прямоугольников=3
такой вариант не обсуждается:
1 1000
10011
00011
00000
11100


 
nika_ufc ©   (2002-10-06 14:27) [1]

И ешо
прямоугольники не должни пересекать друг-друга.


 
Arcus   (2002-10-07 18:02) [2]

Т.е. размер минимального прямоугольника 2х2?
Берем элемент (i, j). Сканируем i-ю строку начиная с j-ого столбца. Пусть насчитали к одинаковых элементов. Берем i + 1 строку, сканируем до j + k элемента или до первого отличного элемента (что вперед наступит) и т.д. до i + m строки. Получаем прямоугольник (i, j) - (i + m, j + k). Проверяем, что это прямоугольник.
Чтоб не пересекались, заводишь булевскую матрицу по размеру исходной. Сначала все элементы false. Находишь прямоугольник - перекидываешь соответствующие элементы в true. Сканирование начинаешь с проверки соответствующего элемента булевской матрицы - если он true, то все, дальше можно не ходить.



Страницы: 1 вся ветка

Текущий архив: 2002.10.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.025 c
14-56328
DaruDe
2002-09-23 14:43
2002.10.17
Измена


1-56137
Viktor1
2002-10-09 12:41
2002.10.17
Прозрачное окно!!!


1-56194
Ryser
2002-10-07 16:41
2002.10.17
Приостановка выполнения цикла.


1-56133
Dmitriy _need the help
2002-10-05 23:52
2002.10.17
ловушка


7-56365
DenKop
2002-07-15 17:19
2002.10.17
COM port