Connecte

Connecte

Difficile

Instructions

Calcule le résultat d'une partie de Hex / Polygon.

Le jeu de plateau abstrait connu sous le nom de Hex / Polygon / CON-TAC-TIX est assez simple dans ses règles, bien que complexe en pratique. Deux joueurs placent des pierres sur un parallélogramme composé de cases hexagonales. Le premier joueur à relier ses pierres au côté opposé gagne. Les quatre côtés du parallélogramme sont répartis entre les deux joueurs (c'est-à-dire qu'un joueur se voit attribuer un côté et le côté directement opposé, et l'autre joueur se voit attribuer les deux autres côtés).

Ton objectif est de construire un programme qui, à partir d'une représentation simple d'un plateau, détermine le gagnant (ou l'absence de gagnant). Note que toutes les parties ne sont pas nécessairement « équitables ». (Par exemple, les joueurs peuvent avoir un nombre de pièces différent ou le plateau de jeu peut avoir une largeur et une hauteur différentes.)

Les plateaux ressemblent à ceci :

. O . X .
 . X X O .
  O O O X .
   . X O X O
    X O O O X

« Le joueur O » joue de haut en bas, « Le joueur X » joue de gauche à droite. Dans l'exemple ci-dessus, O a établi une connexion de gauche à droite, mais personne n'a gagné, car O n'a pas relié le haut et le bas.

Instructions spécifiques au parcours

Tu remarqueras peut-être que certains cas de test semblent injustes. Cela dit, il se peut qu'ils le soient à juste titre. Par exemple, il est courant de donner à des joueurs jeunes ou débutants n pièces supplémentaires à des positions fixes sur le plateau, ce qui fait que des nombres de pièces différents peuvent apparaître dans une partie par ailleurs parfaitement légale.

Quoi qu'il en soit, cet exercice ne se préoccupe que de déterminer un gagnant pour une partie qui peut prendre divers paramètres, comme la longueur du plateau et les pièces supplémentaires. Il ne s'intéresse à aucun autre état de la partie, comme qui a déplacé quoi, quand, ou à qui c'est le tour.

Donc, ne sois pas dérouté par ces parties qui semblent injustes.

Modifie via GitHub Le lien s'ouvre dans une nouvelle fenêtre ou un nouvel onglet
Scala Exercism

Prêt à commencer Connecte ?

Inscris-toi sur Exercism pour apprendre et maîtriser Scala avec 95 exercices, et un vrai mentorat humain, le tout gratuitement.