Module: Recherche en profondeur. DFS


Problem

12 /12


Des lits*

Problem

Une parcelle de jardin rectangulaire de N mètres de large et de M mètres de long est divisée en carrés de 1 mètre de côté. Des lits ont été creusés dans cette zone. Un lit est un ensemble de carrés qui satisfait les conditions suivantes :

* de n'importe quelle case de ce lit, vous pouvez entrer dans n'importe quelle autre case du même lit, en vous déplaçant successivement le long du lit de case en case par leur côté commun ;
* deux lits ne se croisent pas et ne se touchent ni sur les côtés verticaux ni horizontaux des carrés (il est permis de toucher les lits avec les coins des carrés).
Comptez le nombre de lits dans le jardin.

Entrée
La première ligne contient les nombres N et M séparés par un espace, suivis de N lignes de M caractères chacune. Le symbole # désigne le territoire des lits, le point correspond au territoire inoccupé. Il n'y a pas d'autres caractères dans le fichier d'origine. 1≤ N, M≤ 200.

Mentions légales
Imprimez un chiffre - le nombre de lits dans le jardin.


Exemples
# Entrée Sortie
1 5 10 ##..#####. .#.#.#.... ###..##.#. ..##.....# .###.##### 5