From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Curriculum and Labs for Engineering Education

cancel
Showing results for 
Search instead for 
Did you mean: 

Challenge algorithmique #31 : Trouver le nombre d’iles

Bonjour à tous,


Le défi de ce mois-ci est particulier. NIDays à Paris (nidays.fr) approche et une cérémonie sur la zone communauté centrale est prévue à 12h45 pour récompenser dans différentes catégories les meilleurs contributeurs de ces challenges LabVIEW. Ce sera également l’occasion pour tout utilisateur présent à NIDays de voir fonctionner des programmes réalisés et sélectionnés.


Le vainqueur du challenge de février sera également dévoilé par tirage au sort sur l’exposition de NIDays. Il se verra remettre le livre LabVIEW de chez Dunod. (ceci même s’il ne peut pas être présent, pas de soucis, il sera envoyé. D’ailleurs si vous prévoyez de venir, je suis intéressé pour avoir une estimation.). Une communication à toute la communauté sera faite sur les détails de la cérémonie complète.


Voici le défi à résoudre ce mois-ci:


Supposons une carte 2D couverte de ‘1’ (de la terre) et de ‘0’ (de l’eau), compter le nombre d’iles. Une ile est encerclée par de l’eau et est formée par la connexion adjacente de terres horizontalement et verticalement. Vous pouvez considérer les quatre bords de la grille comme entourée d’eau. Pour simplifier le défi, les iles sont toutes rectangulaires et une ile est au minimum constituée de 2 terres. La taille du terrain à explorer est variable.


Exemple 1:


11100

11100

00001

00001

01100


Réponse: 3

Exemple 2:


100000

101111

000000

000011

111011

111000


Réponse : 4

Voir le code joint, il utilise des "entiers" dans une matrice pour stocker les 1 et 0 en entrée avec un exemple de terres émergées. Il suffit de retourner un entier avec le nombre d'iles comptées.

Pour gagner il suffit de m'envoyer nombreux votre code sur emmanuel.roset@ni.com avant le 29 février 2016.

Et n'oubliez pas de poster "code envoyé" sur le défi afin de ne pas vérifier la réception dans la boite mail !

(A l'occasion, dites moi si vous viendrez à NIDays)

Bon défi !

Emmanuel

Comments
Cisco
Active Participant
Active Participant
on

Je lance les hostilités: code envoyé!

Pas de NI-Days Paris pour moi cette année...

Francis M
emmanuel-fr
Member
Member
on

Bon eh bien je confirme, ce premier code tourne bien... j'aurai du faire plus difficile en ne faisant pas des iles rectangulaires ! haha. Bravo

Didier_Bleses
Member
Member
on

Codes envoyés.

Pas de NI-Days.

joke67000
Member
Member
on

bonsoir code envoyé et également pas de NI-Days.

Nico_EMC
Member
Member
on

Code envoyé, et je serais présent aux NI-Days

Jules1403
Member
Member
on

Code envoyé, malheureusement je ne serais pas présent aux NI-Days.

beno72
Member
Member
on

code envoyé. Je ne serai pas au NIDays cette année.

Sebastien_D
Member
Member
on

Code envoyé! Je serai présent aux NIDays.

Contributors