Concept(s) de programmation utilisables pour résoudre ce challenge : Grille 2D, Conditions, Tableaux, Programmation Orientée Objet, Booléens, Fonctions, Parsing
Une araignée est reposée tranquillement sur sa toile. Des mouches sont passées par là et se sont fait piéger ! Il est de temps les emballer pour les manger un peu plus tard.
La grille fait 10 par 10, l’araignée commence sur la case 0 : 0 (en bas à gauche).
L’araignée débute avec 80 d’énergie.
Les mouches sont de différentes tailles, représentées par un chiffre de 1 à 5. Cependant les grosses mouches sont plus rares que les petites. Le but de l’araignée est d’emballer toutes les mouches piégées. Elle ne peut pas emballer une mouche si son énergie n’est pas au moins 3 fois supérieure à la taille de la mouche.
Elle perd 1 point d’énergie par case parcourue.
Emballer une mouche coûte 2 fois sa taille en énergie.
L’araignée doit impérativement se diriger vers la mouche la plus proche. Si jamais deux mouches sont à la même distance, alors il faudra aller emballer celle avec l’ID le plus bas.
L’araignée n’est pas très futée et ne calcule pas très bien son énergie… Par moment, il est possible qu’elle se retrouve devant une mouche à emballer mais qu’elle n’ait pas assez d’énergie pour le faire. Dans ce cas, elle doit retourner vers la mouche déjà emballée la plus proche pour la manger. Manger une mouche lui fait gagner en énergie : 5 + (5 * taille de la mouche) Vous retournerez l’énergie restante de l’araignée.
Les mouches sont dans la variable “flies” sous cette forme ID ; TAILLE : POSITION_X : POSITION_Y
Tu dois retourner :
L’énergie restante de l’araignée après avoir emballé toutes les mouches.
Exemple de données et déroulé ↓ Afficher
Par défaut on le cache parce que ça peut prendre de la place. Tu n'es pas obligé de regarder le déroulé, qui peut te donner trop d'indices sur la résolution du challenge...
Autres challenges à réaliser
Corrigés, challenges, actualités, veille technique... aucun spam.