Voici une planche tic-tac-toe:
a b c
| |
1 - | - | -
_____|_____|_____
| |
2 - | - | -
_____|_____|_____
| |
3 - | - | -
| |
Étant donné un ensemble de mouvements, imprimez le tableau avec les jetons.
Les entrées seront prises comme des mouvements séparés par des espaces, chaque mouvement étant:
- Tout d'abord, le jeton qui va
- Ensuite, la lettre de la colonne sur laquelle elle se déplace
- Enfin, le numéro de la ligne sur laquelle il se déplace
Notez que les règles normales de tic-tac-toe n'ont pas d'importance.
De plus, il n'est pas nécessaire d'imprimer les lettres et les chiffres.
Par exemple, l'entrée Ob2 Xc2 Ob3 Xa1
entraînerait
| |
X | - | -
_____|_____|_____
| |
- | O | X
_____|_____|_____
| |
- | O | -
| |
N'oubliez pas qu'il s'agit de code-golf , donc le code avec le plus petit nombre d'octets l'emporte.
Classements
Voici un extrait de pile pour générer à la fois un classement régulier et un aperçu des gagnants par langue.
Pour vous assurer que votre réponse apparaît, veuillez commencer votre réponse avec un titre, en utilisant le modèle Markdown suivant:
# Language Name, N bytes
où N
est la taille de votre soumission. Si vous améliorez votre score, vous pouvez conserver les anciens scores dans le titre, en les rayant. Par exemple:
# Ruby, <s>104</s> <s>101</s> 96 bytes
Si vous souhaitez inclure plusieurs nombres dans votre en-tête (par exemple, parce que votre score est la somme de deux fichiers ou que vous souhaitez répertorier les pénalités de drapeau d'interprète séparément), assurez-vous que le score réel est le dernier numéro de l'en-tête:
# Perl, 43 + 2 (-p flag) = 45 bytes
Vous pouvez également faire du nom de la langue un lien qui apparaîtra ensuite dans l'extrait de classement:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes
la source
1 2 3
pourXb3
(ne doit pas être exactement cela).Réponses:
JavaScript (ES6),
136133129 octetsla source
Python (2.7),
188180 octetsla source
'
s;
vous permettant de mettre tout votre code sur une seule ligne pour économiser sur l'indentation.for y in '123'
->for y in'123'
. Aussi, ce que xnor a dit: vous pouvez faire de votre fonction une ligne, en utilisant;
des instructions séparées. En utilisant tous ces conseils de golf, vous pouvez jouer au golf sur 6 octets.Python 2, 112 octets
Neuf lignes sont imprimées correspondant aux indices de ligne
r
. L'index de ligne est compté de3
à11
enexec
boucle. Chaque ligne se compose de lignes verticales|
reliant trois segments de 5 caractères qui alternent entre:Le type est fait pour alterner avec
r%3
, sauf que la dernière ligne a des espaces plutôt que des traits de soulignement, obtenus avecr%11%3
.Pour trouver le symbole du joueur pour la cellule actuelle, nous regardons le numéro de ligne
r/3
et la lettrec
de colonne de"abc"
. Nous les concaténons pour créer une chaîne de deux caractèresb3
, en trouver l'index dans la chaîne d'entrée, puis prendre le symbole (X
ouO
) un index plus tôt. Si aucun des joueurs n'y a joué, lefind
sera par défaut à-1
, qui diminue à-2
. Nous piratonss[-2]
pour être-
en ajoutant deux caractères lorsque nous prenons la saisie.la source
PHP, 187 octets
Prend l'entrée comme chaîne. Si je pouvais utiliser un tableau, il peut être réduit à
$_GET[a]
au lieu deexplode(" ",$_GET[a])
207 octets
L'idée la plus simple pour créer ce 194 octets
la source
Mathematica, 205 octets
Ce serait beaucoup plus court si je pouvais utiliser la fonction intégrée ... (92 octets)
la source
Java, 138 octets
Éditer:
Snipet:
Code:
la source
o[a[1]-'a'][a[2]-'0']=a[0]
peut être joué par deux octets ào[a[1]-97][a[2]-48]=a[0]
Lot,
341339305287 octetsSuppose une sortie cohérente. Modifier: enregistré 2 octets en supprimant les espaces inutiles. Enregistré 34 octets en écrivant la sortie à l'aide d'une
for
boucle. Économisé 18 octets en éliminant le sous-programme.la source
Autovim , 110 octets (pas en compétition)
Test de conduite Autovim ... Ceci est à peu près une réponse Vimscript. Pas de concurrence car Autovim est toujours en cours de développement.
Pour l'exécuter:
Non golfé:
Explication à suivre en cas d'intérêt :)
la source
Groovy, 174 octets
non golfé:
la source
CJam, 62 octets
Essayez-le en ligne
Explication:
la source