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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 01.12.2013, 19:24   #1
Vavrenyuk
Пользователь
 
Регистрация: 12.11.2012
Сообщений: 16
По умолчанию Матрица, возможно рекурсия

Дана матрица, состоящая из нулей и единиц. Нужно посчитать количество частей с нулями.
Пример.
Дана матрица 5x5:
0 0 1 0 0
0 1 0 0 0
1 0 0 0 0
0 0 0 0 0
0 0 0 0 0
В ней две части с нулями.
Второй пример.
Дана матрица 5х5
0 1 0 0 1
0 1 0 1 0
1 1 1 1 1
0 1 0 0 0
0 1 0 0 0
В ней пять частей, которые состоят из нулей.
Vavrenyuk вне форума Ответить с цитированием
Старый 02.12.2013, 16:21   #2
Shad0wF1rst
Форумчанин
 
Регистрация: 11.01.2013
Сообщений: 149
По умолчанию

Цитата:
Сообщение от Vavrenyuk Посмотреть сообщение
Дана матрица, состоящая из нулей и единиц. Нужно посчитать количество частей с нулями.
Пример.
Дана матрица 5x5:
0 0 1 0 0
0 1 0 0 0
1 0 0 0 0
0 0 0 0 0
0 0 0 0 0
В ней две части с нулями.
Второй пример.
Дана матрица 5х5
0 1 0 0 1
0 1 0 1 0
1 1 1 1 1
0 1 0 0 0
0 1 0 0 0
В ней пять частей, которые состоят из нулей.
Очень похоже на игру сапер)))
Не знаю насколько алгоритм хорош, но я предлагаю сделать так:
1) находим в первой строчке 0
2) далее проверяем есть ноль дальше, если нет то проверяем есть ли ноль снизу, если есть то проверяем есть ли ноль слева, и справа и снизу и так далее, пока со всех сторон не будут окружать единицы. Соответственно делаем что то вроде списка для хранения индексов с нулями. И потом дальше продолжаем поиск. Когда найдем следующий ноль то проверяем есть ли совпадения среди уже найденых, если есть то продолжаем поиск. И да скорее всего нужно будет использовать рекурсию, для обхода во все стороны.
Может это и чушь, но это моя чушь и я ее никому не отдам.
Shad0wF1rst вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
матрица+рекурсия Quzya2 Помощь студентам 1 27.11.2012 17:58
Паскаль. Матрица NxN -> текстовый файл -> Матрица NxN - найти max по диагоналям -> типизированный файл Лунатик13 Помощь студентам 1 20.02.2012 15:54
Непонятки с DirectX (матрица поворота, камера, матрица проекции) ROD Общие вопросы C/C++ 2 17.09.2010 17:00
TurboPascal: граф, матрица смежности и матрица инцидентности. ulala Помощь студентам 0 02.12.2009 10:11
рекурсия Vital_k Паскаль, Turbo Pascal, PascalABC.NET 1 08.02.2008 13:09