Hier ist ein Tic-Tac-Toe-Board:
a b c
| |
1 - | - | -
_____|_____|_____
| |
2 - | - | -
_____|_____|_____
| |
3 - | - | -
| |
Drucken Sie bei einer Reihe von Zügen die Tafel mit den Token aus.
Die Eingabe wird als durch Leerzeichen getrennte Züge ausgeführt, wobei jeder Zug wie folgt lautet:
- Erstens das Token, das geht
- Als nächstes der Buchstabe der Spalte, in der er sich bewegt
- Zuletzt die Nummer der Zeile, in der es sich bewegt
Beachten Sie, dass normale Tic-Tac-Toe-Regeln keine Rolle spielen.
Außerdem müssen die Buchstaben und Zahlen nicht gedruckt werden.
Zum Beispiel Ob2 Xc2 Ob3 Xa1
würde die Eingabe ergeben
| |
X | - | -
_____|_____|_____
| |
- | O | X
_____|_____|_____
| |
- | O | -
| |
Denken Sie daran, dies ist Code-Golf , also gewinnt der Code mit der geringsten Anzahl von Bytes.
Bestenlisten
Hier ist ein Stack-Snippet, mit dem Sie sowohl eine regelmäßige Rangliste als auch eine Übersicht der Gewinner nach Sprache erstellen können.
Um sicherzustellen, dass Ihre Antwort angezeigt wird, beginnen Sie Ihre Antwort mit einer Überschrift unter Verwendung der folgenden Markdown-Vorlage:
# Language Name, N bytes
Wo N
ist die Größe Ihrer Einreichung? Wenn Sie Ihren Score zu verbessern, Sie können alte Rechnungen in der Überschrift halten, indem man sich durch das Anschlagen. Zum Beispiel:
# Ruby, <s>104</s> <s>101</s> 96 bytes
Wenn Sie dort mehrere Zahlen in Ihre Kopfzeile aufnehmen möchten (z. B. weil Ihre Punktzahl die Summe von zwei Dateien ist oder Sie die Strafen für Dolmetscherflaggen separat auflisten möchten), stellen Sie sicher, dass die tatsächliche Punktzahl die letzte Zahl in der Kopfzeile ist:
# Perl, 43 + 2 (-p flag) = 45 bytes
Sie können den Sprachnamen auch zu einem Link machen, der dann im Leaderboard-Snippet angezeigt wird:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes
quelle
1 2 3
fürXb3
(muss nicht genau das sein).Antworten:
JavaScript (ES6),
136133129 Bytequelle
Python (2.7),
188180 Bytesquelle
'
s;
indem Sie Ihren gesamten Code in eine Zeile setzen, um Einrückungen zu vermeiden.for y in '123'
->for y in'123'
. Was xnor gesagt hat: Sie können Ihre Funktion zu einem Einzeiler machen, indem Sie;
Anweisungen trennen. Mit all diesen Golftipps können Sie 6 Bytes Golf spielen.Python 2, 112 Bytes
Es werden neun Zeilen entsprechend den Zeilenindizes gedruckt
r
. Der Zeilenindex wird in einer Schleife von3
bis hochgezählt . Jede Zeile besteht aus vertikalen Linien11
exec
|
die drei 5-stellige Segmente verbinden, die zwischen folgenden Elementen wechseln:Der Typ ist für das Radfahren vorgesehen
r%3
, außer dass die letzte Zeile eher Leerzeichen als Unterstriche enthält, die mit erreicht werdenr%11%3
.Um das Spielersymbol für die aktuelle Zelle zu finden, sehen wir uns die Zeilennummer
r/3
und den Spaltenbuchstabenc
von an"abc"
. Wir verketten sie, um eine zweistellige Zeichenfolge zu erstellenb3
, finden den Index in der Eingabezeichenfolge und nehmen dann das Symbol (X
oderO
) einen Index früher. Wenn keiner der Spieler dort gespielt hat,find
wird standardmäßig-1
der Wert verwendet, der sich verringert-2
. Wir hackens[-2]
,-
indem wir zwei Zeichen anhängen, wenn wir Eingaben machen.quelle
PHP, 187 Bytes
Nimmt die Eingabe als Zeichenfolge. Wenn ich ein Array verwenden könnte, könnte es auf
$_GET[a]
statt reduziert werdenexplode(" ",$_GET[a])
207 Bytes
Die einfachste Idee, diese 194 Bytes zu erstellen
quelle
Mathematica, 205 Bytes
Dies wäre viel kürzer, wenn ich die eingebaute ... (92 Bytes) verwenden könnte.
quelle
Java, 138 Bytes
Bearbeiten:
Snipet:
Code:
quelle
o[a[1]-'a'][a[2]-'0']=a[0]
kann von zwei Bytes biso[a[1]-97][a[2]-48]=a[0]
Batch,
341339305287 BytesNimmt eine konsistente Ausgabe an. Bearbeiten: 2 Bytes durch Entfernen unnötiger Leerzeichen gespeichert. Sparte 34 Bytes durch Schreiben der Ausgabe mit einer
for
Schleife. 18 Bytes durch Eliminieren des Unterprogramms gespeichert.quelle
Autovim , 110 Bytes (nicht konkurrierend)
Probefahrt mit Autovim ... Dies ist so ziemlich eine Vimscript-Antwort. Kein Wettbewerb, da Autovim noch in der Entwicklung ist.
Um es auszuführen:
Ungolfed:
Erklärung bei Interesse :)
quelle
Groovy, 174 Bytes
ungolfed:
quelle
CJam, 62 Bytes
Probieren Sie es online aus
Erläuterung:
quelle