Les échecs hexagonaux décrivent une famille de variantes d'échecs jouées sur un plateau où les cellules sont des hexagones au lieu des carrés traditionnels. Il existe de nombreuses variantes de ce type; dans ce défi, nous nous concentrerons sur la variante de Gliński, qui est la plus courante.
Le plateau est composé de trois couleurs (pour que la même couleur ne partage pas de bord), les bords des hexagones faisant face aux joueurs. La carte a 11 fichiers, marqués par des lettres à a
travers l
(la lettre j
n'est pas utilisée), et 11 rangs (qui se plient à 60 ° au fichier f
). Les rangs 1
dans 6
chacun contiennent 11 cellules, le rang 7
a 9 cellules, le rang 8
a 7, etc. Le rang 11
contient exactement une cellule: f11 . (Si cela peut aider, pensez à chaque rang comme faisant une forme de "V" très large.)
Voici un exemple d'image du tableau, avec le chevalier sur la cellule centrale. Les cellules marquées d'un point sont les mouvements légaux de ce chevalier particulier. Le chevalier se déplace d'une manière similaire aux échecs "normaux", deux-en-un et un-dessus. En termes d'échecs hexagonaux, c'est un mouvement orthogonal (à travers un bord), puis un mouvement diagonal dans la même direction (le mouvement le plus proche de la même couleur). Par exemple avec le chevalier ci-dessous, un mouvement orthogonal "vers le haut" au brun clair est alors accompagné d'un mouvement diagonal "vers le haut et vers la droite" ou "vers le haut et vers la gauche" vers le brun clair le plus proche.
Depuis le domaine public via https://commons.wikimedia.org/wiki/File:Glinski_Chess_Knight.svg
Ce chevalier est positionné à f6 et les mouvements légaux sont donc
c4, c5, d3, d7, e3, e8, g3, g8, h3, h7, i4, i5
Contribution
Une seule entrée donnant la cellule de départ de notre chevalier. Cela peut être une chaîne unique "b6"
, deux chaînes "b", "6"
, etc., dans n'importe quel format pratique . Les lettres d'entrée peuvent être en majuscules ou en minuscules - votre choix.
Production
Une liste des mouvements valides qu'un chevalier à cet endroit peut effectuer. Cela peut être un tableau de chaînes, une chaîne unique avec un délimiteur sans ambiguïté et cohérent, des chaînes séparées par des sauts de ligne, etc., selon ce qui est le plus pratique. La sortie n'a pas nécessairement besoin d'être triée et peut être en majuscule ou en minuscule - votre choix.
Règles
- Supposons qu'aucune autre pièce ne se trouve sur le plateau ou n'interfère avec les mouvements. Nous nous concentrons uniquement sur le chevalier.
- Un programme complet ou une fonction sont acceptables. S'il s'agit d'une fonction, vous pouvez renvoyer la sortie plutôt que de l'imprimer.
- Si possible, veuillez inclure un lien vers un environnement de test en ligne afin que d'autres personnes puissent essayer votre code!
- Les failles standard sont interdites.
- Il s'agit de code-golf, donc toutes les règles de golf habituelles s'appliquent et le code le plus court (en octets) l'emporte.
Exemples
b6
a3, c4, d5, d9, e7, e8
f6
c4, c5, d3, d7, e3, e8, g3, g8, h3, h7, i4, i5
f11
d8, e8, g8, h8
i1
f2, f3, g4, h4, l2, k3