Методика підрахунку прямокутників різної форми
111 00001
11100001
11111111
11111111
00111111
00111110
00110011
00111111
Принцип роботи заключається в наступному: програма починає шукати перший нульовий елемент:
Х
Після того, як знайдено перший нульовий елемент програма починає спочатку по горизонталі відшукувати їх і заміняти на 1. Коли буде досягнуто останнього нульового елемента програма переходить до наступного рядка, при чому номер стовпчика цього рядка буде співпадати з номером стовпчика першого нульового елемента:
Х
І так далі, доки весь прямокутник не буде повністю затертий, тобто, якщо елемент першої колонки прямокутника наступного рядка не буде = 0 (елемент Х попереднього рисунку). А після цього програма почне шукати наступний прямокутник. З кожним знайденим прямокутником лічильник збільшується на 1.
Таким чином: програма спочатку знаходить прямокутник, збільшує лічильник прямокутників, а потім затирає знайдений прямокутник.
Ось в якій черзі затираються елементи першого прямокутника:
1234
5668
Для решти:
1234
5668
12