Blocs disponibles

13 blocs
Rouge× 1
Blanc× 2
Vert× 3
Bleu× 5
Jaune× 2

Séquence

  1. 1.
    1Vert
  2. 2.
    2Blanc3Blanc
  3. 3.
    4Jaune5Jaune6Jaune
  4. 4.
    7Bleu
  5. 5.
    8Vert9Vert
  6. 6.
    10Blanc11Blanc
  7. 7.
    12Jaune

Respecte la matrice de gauche à droite, quatre blocs par glissade et les paires de droite à gauche.

Robot

1

2

3

Glisse un bloc dans une glissade. Maximum 4 blocs par glissade.
Au clavier : sélectionne un bloc avec Tab, puis appuie sur 1, 2 ou 3.

Matrice de couleurs

3 × 4

Priorité

  1. Privilégier les trajets courts :
    • Blanc ↔ Vert, Vert ↔ Bleu, Bleu ↔ Jaune : 1 point.
    • Blanc ↔ Bleu, Vert ↔ Jaune : 2 points.
    • Blanc ↔ Jaune : 3 points.
    • Blanc ↔ Rouge : 4 points.
    • Vert ↔ Rouge : 6 points.
    • Bleu ↔ Rouge : 8 points.
    • Jaune ↔ Rouge : 10 points.
  2. Commencer par la couleur la plus proche : Vert ou Bleu.

Départ entre Vert et Bleu. Si aucune de ces couleurs ne peut être chargée en premier, le robot commence par la couleur autorisée la plus proche pour respecter la matrice.

Résultat

Couleur : glissades en ordre inversé.

  1. Vert : 2
  2. Blanc : 2, 1
  3. Jaune : 3, 1, 1
  4. Bleu : 2
  5. Vert : 3, 1
  6. Blanc : 3, 2
  7. Jaune : 3
Reste à faire

Avec ton code actuel, garde une valeur à la fois. Après un appel réussi à ALGOcalculer(), les 12 valeurs sont en mémoire : chaque appel à ALGOgetValeur() lit la couleur et la glissade d’un bloc, sans recalculer le parcours. Une chaîne ajouterait du découpage et des conversions.

Pour un transfert entre l’ESP32 et le hub LEGO, un envoi groupé serait généralement préférable pour réduire les échanges. La différence reste à mesurer sur ton matériel.