Parcours
/
ReasonML
ReasonML
/
Exercices
/
Champ de fleurs
Champ de fleurs

Champ de fleurs

Moyen

Introduction

Flower Field est une réinterprétation bienveillante du célèbre jeu Démineur. Le but du jeu est de trouver toutes les fleurs du jardin à l'aide d'indices numériques qui indiquent combien de fleurs sont directement adjacentes (horizontalement, verticalement, en diagonale) à une case. « Flower Field » était inclus dans les versions régionales de Microsoft Windows en Italie, en Allemagne, en Corée du Sud, au Japon et à Taïwan.

Instructions

Ta tâche consiste à indiquer le nombre de fleurs dans les cases vides d'un jardin Champ de fleurs terminé. Le jardin est un plateau rectangulaire composé de cases, qui sont soit vides (' '), soit occupées par une fleur ('*').

Pour chaque case vide, compte le nombre de fleurs qui lui sont adjacentes (horizontalement, verticalement ou en diagonale). Si une case vide n'a aucune fleur adjacente, laisse-la vide. Sinon, remplace-la par le nombre de fleurs adjacentes.

Par exemple, tu peux recevoir un plateau 5 x 4 comme celui-ci (ici, les cases vides sont représentées par le caractère « · » pour l'affichage à l'écran) :

·*·*·
··*··
··*··
·····

Que ton code doit transformer en ceci :

1*3*1
13*31
·2*2·
·111·
Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
ReasonML Exercism

Prêt à commencer Champ de fleurs ?

Inscris-toi sur Exercism pour apprendre et maîtriser ReasonML avec 31 exercices, et un vrai mentorat humain, le tout gratuitement.

Analyse approfondie de Champ de fleurs !

On explore les boucles `for` imbriquées, l'utilisation astucieuse de min/max pour simplifier la vérification des bornes, les _pipelines_ fonctionnels et le recours à des matrices à deux dimensions.