La tortue veut se déplacer le long de la grille pour se rendre à sa nourriture. Il veut savoir combien de mouvements il lui faudra pour y arriver.
De plus, comme il est lent, il a installé des téléporteurs autour de son domaine qu'il utilisera s'il raccourcit son chemin. Ou évitez-les si cela allonge son chemin.
Rencontrez la tortue
🐢
La tortue vit sur une grille
Cependant, la tortue ne peut pas se déplacer vers un carré avec une montagne
Le défi
Étant donné une sortie de configuration de grille initiale, le nombre de mouvements qu'il faudra à la tortue pour atteindre sa fraise.
Règles
Vous pouvez supposer que la grille d'entrée a une solution
Chaque grille n'aura qu'un
strawberry
, deuxportals
et unturtle
La grille d'entrée peut être entrée dans n'importe quel format pratique
Vous devez traiter
teleporters
les articles à usage uniqueLe tour que la tortue se déplace sur une
teleporter
case, il est déjà sur le correspondantteleporter
. Il ne passe jamais sur unteleporter
et y reste pour un mouvementLe chemin le plus court n'a pas besoin d'utiliser le portail
La tortue ne peut pas passer dans les tuiles montagne
Vous pouvez utiliser un caractère ASCII ou entier pour représenter
mountains
,turtle
,empty grid square
,strawberry
Vous pouvez utiliser le même caractère ou deux caractères ou entiers ASCII différents pour représenter les
teleporter
pairesUne grille peut avoir plusieurs chemins avec la même longueur de chemin la plus courte
C'est du code-golf
Clarifications des règles
- Vous devez traiter
teleporters
les articles à usage unique.
Pourrait être résolu uniquement en entrant et en sortant deux fois des portails. Au moment de cette clarification, les deux solutions ont agi en supposant qu'elles étaient à usage unique ou qu'il n'y avait aucune raison d'essayer des carrés précédemment utilisés. Pour éviter de casser leurs solutions travaillées, cela semblait la meilleure façon de rendre compte de cette configuration. Par conséquent, cela serait considéré comme une grille non valide.
Cas de test formatés sous forme de listes
[ ['T', 'X', 'X', 'S', 'X'], ['X', 'X', 'X', 'X', 'X'], ['X', 'X', 'X', 'X', 'X'] ] --> 3
[ ['T', 'M', 'X', 'S', 'X'], ['X', 'M', 'X', 'X', 'X'], ['O', 'X', 'X', 'X', 'O'] ] --> 4
[ ['T', 'M', 'X', 'S', 'O'], ['O', 'M', 'X', 'X', 'X'], ['X', 'X', 'X', 'X', 'X'] ] --> 2
[ ['T', 'M', 'X', 'S', 'X'], ['O', 'M', 'X', 'X', 'X'], ['O', 'X', 'X', 'X', 'X'] ] --> 4
[ ['T', 'M', 'S', 'X', 'O'], ['X', 'M', 'M', 'M', 'M'], ['X', 'X', 'X', 'X', 'O'] ] --> 7
[ ['T', 'X', 'X', 'S', 'X'], ['O', 'M', 'M', 'M', 'X'], ['X', 'X', 'O', 'X', 'X'] ] --> 3
Cas de test formatés pour les humains
T X X S X
X X X X X
X X X X X --> 3
T M X S X
X M X X X
O X X X O --> 4
T M X S O
O M X X X
X X X X X --> 2
T M X S X
O M X X X
O X X X X --> 4
T M S X O
X M M M M
X X X X O --> 7
T X X S X
O M M M X
X X O X X --> 3
Crédits
Conception et structure via: Hungry mouse par Arnauld
Conseils proposés pour modifier les défis: Kamil-drakari , bœuf