Illustration visuelle du challenge de code : WALL-E #3
Comportemental Avancé

WALL-E #3

Aide Wall-E à empiler correctement les cubes pour construire la tour la + haute possible.

Code : WALL_E_3

Mission

Dans les challenges précédents, Wall-E traitait les déchets. Maintenant il a tout traité et voudrait donc les empiler pour les ranger. Aide-le à construire de grandes tours !

Règles

Wall-E se retrouve face à des cubes de déchets positionnés aléatoirement et repéré chacun par une coordonnée unique, sur un quadrillage de 15×15.

  • La position 0 est le premier emplacement en haut à gauche
  • La position 224 est le dernier emplacement en bas à droite
  • Les positions 0, 15, 30… 210 sont les premiers emplacements de chaque rangée
  • Les positions 14, 29… 209 sont les derniers emplacements de chaque rangée

Dans les données d’entrée :

  • un 0 représente un emplacement vide
  • un 1 représente un emplacement sur lequel se trouve un cube

Wall-E va tenter d’empiler les cubes.

Wall-E pose les cubes selon ces règles :

  • Wall-E ne pose un cube sur un étage N, que s’il y a un cube à l’étage N-1. Donc au début, il ne pourra pas poser de cube sur les positions marquée d’un 0.
  • Wall-E pose un cube sur un étage N, que s’il y a au moins 3 cubes autour de la même position sur l’étage N-1. Par exemple, pour poser un cube sur la position 53, il faut qu’il y ait au moins 3 cubes sur les positions 38 (au-dessus), 68 (en dessous), 52 (à gauche) ou 54 (à droite).
  • Tant que ces 2 règles sont respectées, Wall-E empile les cubes.

Tu dois retourner le produit du dernier étage atteint * le nombre de cubes posés sur le dernier étage. Par exemple, si je pose à la fin 5 cubes sur l’étage 8, je retourne 5 * 8 = 40.

L’étage 1 est déjà posé (= données d’entrée).

Remarques :

  • Consulte les exemples de données pour bien comprendre l’énoncé
  • Regarde du côté du Challenge « Pixels de couleurs » qui ressemble à celui-ci

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 : Grille 2D, Tableaux, Programmation Orientée Objet, Fonctions, Parsing

Keep coding

Autres challenges à réaliser

Débutant
Pierre-Feuille-Ciseaux

Pierre-Feuille-Ciseaux

Pour se familiariser avec le système, tu dois battre ton adversaire à Pierre / Feuille / Ciseaux et donc répondre à chacun de ses coups ! Tu as une longueur d’avance et sait donc ce qu’il va jouer, à toi de répondre en fonction !

Comportemental Corrigés dispos : PHPJavascriptPythonPHPJavascript
Intermédiaire
Wade Wilson part en mission !

Wade Wilson part en mission !

Une base militaire à attaquer ? Aucun problème pour Deadpool, c’est plutôt une invitation à bien rigoler !

Comportemental Méthodologie proposée
Intermédiaire
WALL-E #1

WALL-E #1

Wall-E est un robot dont la mission est de nettoyer la Terre. Tu dois coder son fonctionnement pour qu’il traite efficacement ces déchets. Néanmoins, sois vigilant pour ne pas épuiser sa réserve d’énergie !

Comportemental Corrigés dispos : PHPPHP

Ta newsletter chaque mois

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