Ciao!
- per postare il codice sul forum utilizza gli appositi TAG;
- al fine di rendere il codice più chiaro e leggibile ti consiglio di scrivere codice indentato, di rispettare la spaziatura e di usare le parentesi graffe anche se il corpo della generica istruzione di controllo è costituito da una sola istruzione;
- visto che nei due new una volta lo utilizzi e una volta no, sai a cosa serve (nothrow)?
- perchè dichiari le variabili k, i e j due volte?
- la parte sulla ricerca del sotto-array è completamente da rivedere, ma per il momento sorvoliamo e concentriamoci su altro...
- il motivo per cui quel codice non compila è da attribuire alla seguente riga:
int **M = new int[r][c];
Sai come allocare dinamicamente una matrice (ossia un array bidimensionale)?