Bonjour,
Je dois réaliser un programme en C qui détermines les fonds et sommets d'un tableau à deux dimensions. Cad que ce tableau représente une "carte" et chaque case est un point qui a une certaine hauteur.
Je dois donc pouvoir dire telle case est un sommet, un fond ou aucun des deux.
Je pensais analyser les sommets et fonds ligne par ligne puis colonne par colonne. Et je compare chaque case avec la case précédente et la suivante.
Ensuite j'aurais comparé les 2 analyses: par exemple si une case est un sommet dans l'analyse ligne par ligne et dans celle colonne par colonne, dans ca cas c'est bien un sommet.
Mais c'est surtout dans l'analyse elle-même que je bloque, car j'ai 9 cas qui peuvent se présenter:
- case[x-1] < case[x] > case[x+1]
- case[x-1] < case[x] < case[x+1]
- case[x-1] < case[x] = case[x+1]
- case[x-1] > case[x] > case[x+1]
- case[x-1] > case[x] < case[x+1]
- case[x-1] > case[x] = case[x+1]
- case[x-1] = case[x] > case[x+1]
- case[x-1] = case[x] < case[x+1]
- case[x-1] = case[x] = case[x+1]
Dans certains cas on peut directement dire que c'est un sommet ou un fond, ou aucun des 2, mais dans d'autres il faut attendre d'être plus loin et revenir en arrière pour dire ça.
Je doute que je sois vraiment sur une piste très optimisée piste.
Comment envisageriez-vous ce problème ?
Partager