Номер подматрицы размера AxB в матрице размера MxN
Я слежу за https://taninamdar.files.wordpress.com/2013/11/submatrices3.pdf чтобы найти общее количество подматриц матрицы. Но я застрял, как узнать, сколько подматриц данного размера присутствует в матрица. Также 0<=A<=M и 0<=B<=N.
где AxB(размер подматрицы) и MxN(размер матрицы).
1 ответ
Я не просматривал PDF (математика и я не друзья), однако здесь достаточно простой логики. Просто попробуйте уменьшить размерность: сколько векторов длины m
Вы можете вставить вектор длины n
?
Ответ: n-m+1
, Чтобы убедить вас, просто зайдите в дела. Сказать n = 5
а также m = 5
, У вас есть одна возможность. С n = 5
а также m = 4
у вас есть два (второй вектор начинается с индекса 0 или индекса 1). С n = 5
а также m = 3
у вас есть три (вектор может начинаться с индекса 0, 1 или 2). И для n = 5
а также m = 1
5, кажется, логика.
Итак, чтобы применить это к матрице, вы должны добавить измерение. Как ты это делаешь? Умножение. Сколько векторов длины a
Вы можете поместить внутрь вектора длины n
? n-a+1
, Сколько векторов длины b
Вы можете поместить внутрь вектора длины m
? m-b+1
,
Итак, сколько матриц размера A*B
Вы можете положить в матрицу длины N*M
? (N-A+1)*(M-B+1)
,
Итак, я не обработал случай, когда одно из измерений равно 0. Это зависит от того, как вы рассматриваете этот случай.