Illustration visuelle du challenge de code : Die Hard

Die Hard

Profite d’un challenge exaltant et rejoins John McClane dans son combat pour sauver le réveillon au Nakatomi Plaza !

Code : NOEL_2023_3

Mission

John doit neutraliser les terroristes présents dans le célèbre building et sauver le réveillon de Noël. Pour cela, il utilise des stratagèmes élaborés !

Les terroristes sont dispersés dans les étages, John doit les éliminer un par un pour arriver tout en haut de l’hôtel, à l’étage 100.

C’est son copain policier en bas, qui lui envoie la position des ennemis par radio.

Règles

John démarre à un étage aux alentours de l’étage 50.

On récupère la position de tous les ennemis.

  • Il n’y a jamais d’ennemi à l’étage de départ de John.
  • John ne fait que monter, il ne s’intéressera pas aux ennemis qui se trouvent aux étages sous son étage de départ.
  • Dans la séquence, il faut indiquer l’étage de départ de John.
  • Il faut aussi indiquer l’étage d’arrivée qui est toujours 100 et où il n’y a jamais d’ennemis.

John ne s’arrête à un étage que pour neutraliser un ennemi, en respectant ces règles :

  • Au départ, il y a au maximum 1 ennemi par étage, mais ils vont se déplacer…
  • Lors des combats, John fait du bruit… Tous les ennemis qui se trouvent dans les 3 étages supérieurs descendent alors d’un étage, pour voir ce qui se passe… Si John combat à l’étage 51, les ennemis se trouvant aux étages 52, 53, et 54 descendent chacun d’un étage par rapport à leur étage de départ. Celui à l’étage 52 descend à l’étage 51. Celui à l’étage 53 descend à l’étage 52. Et celui à l’étage 54 descend à l’étage 53.
  • Un ennemi peut alors descendre à l’étage où se trouve déjà John, et un second combat démarre. Il faudra l’indiquer dans la séquence finale en indiquant plusieurs fois l’étage.
  • Selon la disposition des ennemis, John peut enchainer jusqu’à 4 combats à un même étage.

Exemple d’une séquence

  • John démarre à l’étage 50
  • Il y a 5 ennemis aux étages 55, 62, 63, 70, 72
    • John monte à l’étage 55 et neutralise l’ennemi
    • Les ennemis aux étages supérieurs n’ont rien entendu
    • John monte à l’étage 62 et neutralise l’ennemi
    • Celui à l’étage 63 descend à l’étage 62 et John le neutralise
    • Les ennemis aux étages 70 et 72 n’ont rien entendu
    • John monte à l’étage 70 et neutralise l’ennemi
    • Celui à l’étage 72 a entendu et descend à l’étage 71
    • John monte à l’étage 71 et neutralise l’ennemi
    • Il n’y a plus d’ennemi, John monte à l’étage 100
  • La séquence finale est donc 50-55-62-62-70-71-100

Tu dois retourner la séquence que John doit effectuer pour arriver au dernier étage. Le format attendu est 50-55-62-62-70-71-100

Résoudre le challenge

Pour coder ce challenge, plusieurs possibilités. Si tu débutes, utilise la Sandbox en ligne. Si tu es plus à l'aise, regarde la documentation de notre API, pour coder en local. Tu peux aussi copier/coller un jeu de données ci-dessous.

Quelques ressources pour t'aider : Données et logique algorithmique Méthodologies Corrigés

Accompagnement à la résolution

Progresse dans les challenges en utilisant nos aides à la résolution : outils, techniques et conseils pour t'aider à surmonter les challenges de programmation les plus complexes avec méthodologie, assurance et créativité.

Jeu de données et logique algorithmique

A partir des données et de la réponse attendue, aide toi du déroulé pour déterminer la logique à mettre en oeuvre.

Afficher les données et le déroulé

Méthodologies

Développe une approche structurée grâce à nos guides de résolution. Travaille des concepts précis comme la programmation orientée objet ou les tests unitaires, pour améliorer ta manière de coder et progresser.

Pas de méthodologie encore pour ce challenge, mais on y travaille ! Suis-nous pour être informé de la sortie !


Corrigés

Les corrigés te permettent de découvrir certains concepts techniques mais vont aussi te donner une solution au challenge. Code le challenge par toi même avant de consulter les corrigés ;)

Pas de corrigé encore pour ce challenge, mais on y travaille ! Suis-nous pour être informé de la sortie !

Concept(s) de programmation utilisables pour résoudre ce challenge : Conditions, Tableaux, Programmation Orientée Objet, Récursivité

Keep coding

Autres challenges à réaliser

Débutant
CodeMind #1 : Émotions

CodeMind #1 : Émotions

Commence le premier challenge de CodeMind : utilise l’analyse du langage naturel pour reconnaître les émotions.
C’est parti pour Top Code 2024 !

Comportemental
Avancé
WALL-E #2

WALL-E #2

Wall-E est un petit robot chargé de nettoyer la planète. Il fait face à un tas de déchets divers. Tu dois programmer son fonctionnement pour qu’il traite correctement les déchets. Mais attention à ne pas tomber en manque de batterie !

Comportemental
Intermédiaire
Le maître des clés

Le maître des clés

La salle des coffres d’une prestigieuse banque… De nombreuses portes renfermant sans doute des trésors… Arriveras tu à tout ouvrir ?

Comportemental Méthodologie proposée

Ta newsletter chaque mois

Corrigés, challenges, actualités, veille technique... aucun spam.