Проверить, является ли данная матрица матрицей нулевого деления

Опубликовано: 20 Сентября, 2022

Дана квадратная матрица NxN M[][] . Задача состоит в том, чтобы проверить, является ли матрица M матрицей с нулевым делением или нет. Матрица называется матрицей с нулевым делением, только если 2 или более результатов деления на пол произведения элемента по столбцам на произведение элемента по строке равны нулю .

Примеры:

Input: M[ ][ ] = [ [ 1, 2, 3 ], 
                           [ 4, 5, 6 ], 
                          [ 7, 8, 9 ] ]

Output: 1
Explanation: Refer to image for explanation.

Input: M[ ][ ] = [ [ 1, 2, 3 ],       
                           [ 6, 8, 2 ], 
                           [ 7, 8, 9 ] ]
Output: 0

Подход: Эта проблема основана на реализации. Выполните следующие шаги, чтобы решить данную проблему.

  • Возьмите матрицу M[ ][ ] и вычислите произведение элементов по строкам и по столбцам.
  • Сохраните произведение каждой строки и столбца в массивах R[ ] и C[ ] соответственно.
  • Теперь возьмем напольное деление элемента массива C[ ] по индексу на массив R[ ] .
  • Если мы получаем два или более нулей, то это сетка с нулевым делением и возвращает 1 , иначе возвращает 0 .
  • В случае, если знаменатель равен нулю, тогда возвращается ошибка деления на ноль -1 .

Ниже приведена реализация описанного выше подхода.

Сложность времени: О(Н*Н)
Вспомогательное пространство: НА)