J'ai besoin de trouver le plus grand carré de 1 est dans un gigantesque fichier complet de 1 et de 0. Je sais que je dois utiliser la programmation dynamique. Je suis le stocker dans un tableau 2D. L'aide de l'algorithme pour trouver la plus grande place serait génial, merci!
exemple d'entrée:
1 0 1 0 1 0
1 0 1 1 1 1
0 1 1 1 1 1
0 0 1 1 1 1
1 1 1 1 1 1
réponse:
1 1 1 1
1 1 1 1
1 1 1 1
1 1 1 1
Mon code pour l'instant:
int Square (Sq[int x][int y]) {
if (Sq[x][y]) == 0) {
return 0;
}
else {
return 1+MIN( Sq(X-1,Y), Sq(X,Y-1), Sq(X-1,Y-1) );
}
}
(en supposant que les valeurs déjà saisies dans le tableau)
int main() {
int Sq[5][6]; //5,6 = bottom right conner
int X = Square(Sq[5][6]);
}
Comment allez-vous à partir de là?