C'est la fin d'un autre jeu d'échecs bien joué. Vous êtes le joueur blanc et vous avez toujours une tour et votre roi. Votre adversaire n'a plus que son roi.
Puisque tu es blanc, c'est ton tour. Créez un programme pour jouer ce match d'échecs. Sa sortie peut être une séquence de mouvements, une animation gif, de l'art ASCII ou tout ce que vous voulez.
Cela semble assez évident, mais je vais le dire explicitement: vous devez gagner le jeu (en un nombre fini de coups). Il est toujours possible de gagner de cette position. NE PERDEZ PAS CE ROOK. NE PAS STALEMATE.
Votre programme peut accepter ou non une entrée humaine pour la position de départ et pour chaque mouvement noir (vous pouvez supposer en toute sécurité qu'il s'agit d'une position légale, c'est-à-dire que les rois ne se touchent pas). Si ce n'est pas le cas, une position de départ aléatoire et des mouvements aléatoires pour le roi noir suffiront.
But
Votre score sera la longueur en octet de votre code + bonus. N'importe quelle langue est autorisée, le score le plus bas l'emporte.
Prime
-50 si votre programme permet à la fois une position de départ définie par l'homme et une position aléatoire. Les humains peuvent y accéder via stdin, fichier, GUI ...
-100 si votre programme permet à un humain et à un joueur aléatoire de déplacer le roi noir
+12345 si vous comptez sur un solveur d'échecs externe ou une bibliothèque d'échecs intégrée
Bonne chance!
Mise à jour!
Règle supplémentaire: le match doit être joué jusqu'à l'échec et mat. Les noirs ne démissionnent pas, ne sautent pas hors de l'échiquier et ne sont pas kidnappés par des extraterrestres.
Allusion
Vous pouvez probablement obtenir de l'aide sur cette question sur chess.se .