Für diese Herausforderung drucken Sie zu Beginn eines Dame-Spiels die Koordinaten und die Farbe der einzelnen Teile.
Geben Sie x und y (durch Kommas getrennt) für jedes Quadrat (mit einem Index von 0 bis 7) auf einem Schachbrett ein, gefolgt von einem "r" oder "b" (für Rot oder Schwarz), wobei der obere Rand des Bretts (näher an y = 0) liegt ) ist rot und der Boden ist schwarz. Zeilenumbrüche zwischen den Teilen sind erforderlich und es sind keine Leerzeichen erforderlich.
Dies ist Codegolf, daher werden Antworten in Bytes bewertet, wobei weniger Bytes besser sind.
Nachgestellte Zeilenumbrüche sind zulässig, aber nicht erforderlich, und die Reihenfolge muss genau der unten angegebenen entsprechen.
Gewünschte Ausgabe:
0,0r
0,2r
0,4r
0,6r
1,1r
1,3r
1,5r
1,7r
2,0r
2,2r
2,4r
2,6r
5,1b
5,3b
5,5b
5,7b
6,0b
6,2b
6,4b
6,6b
7,1b
7,3b
7,5b
7,7b
x=3
undx=4
?0,0r;0,2r;0,4r;0,6r;1,1r;1,3r;1,5r;1,7r;2,0r;2,2r;2,4r;2,6r;5,1b;5,3b;5,5b;5,7b;6,0b;6,2b;6,4b;6,6b;7,1b;7,3b;7,5b;7,7b
?Antworten:
05AB1E , 26 Bytes
Probieren Sie es online!
Erläuterung
quelle
[0,1,2,5,6,7]
könnte in weniger Bytes geschoben werden ... aber alles, was ich denken konnte, war,7Ý34SK
also denke ich nicht.JavaScript (ES6), 66 Byte
Beinhaltet einen nachgestellten Zeilenumbruch.
Demo
Code-Snippet anzeigen
quelle
Perl 5 , 53 Bytes
Probieren Sie es online!
quelle
C (GCC) ,
83817978 Bytesx/4+2*(x/12)
zux/4+x/12*2
.x%8*2%8
zux*2%8
.Probieren Sie es online!
quelle
x%8*2%8
kann seinx*2%8
Python 2 ,
747367 BytesProbieren Sie es online!
quelle
in(...):
->in ...:
.Java 8,
10296959391 BytesPort von @JonathanFrech 's C - Antwort , nach der ich selbst 5 Bytes golfen habe.
Probieren Sie es hier aus.
Erläuterung:
quelle
Bash , 59 Bytes
Nicht die kürzeste, aber eine lustige:
Probieren Sie es online!
quelle
APL (Dyalog Classic) , 38 Byte
Probieren Sie es online!
quelle
Gelee , 35 Bytes
Probieren Sie es online!
Volles Programm ohne Argumente
Erläuterung
quelle
Java 8, 97 Bytes
quelle
JavaScript (ES6), 64 Byte
Dies scheint sich ausreichend von @ Arnauld zu unterscheiden, um die Veröffentlichung zu rechtfertigen:
Erläuterung:
Snippet:
Code-Snippet anzeigen
quelle
Python 2 , 63 Bytes
Probieren Sie es online!
quelle
APL (Dyalog) ,
4544 Bytes *-1 danke an ngn.
Niladic-Funktion, die 0-basierte Indizierung (
⎕IO←0
) voraussetzt, die auf vielen Systemen standardmäßig verwendet wird. Druckt nach STDOUT.Probieren Sie es online!
(
...),¨¨'rb'
füge "r" an jede der ersten Gruppe von Elementen und "b" an jede der zweiten an:⍳8
null bis acht2|
Teilungsrest, wenn halbiert∘.+⍨
plus tisch mit sich auf beiden achsen⍸
Indizes der wahren Werte⍕¨
Jedes Format (konvertiert in Zeichenfolgen mit dem Muster,d d
bei dem jedesd
eine Ziffer ist)⊂
beifügen (damit wir es für jeden wiederverwenden können ...)8 ¯8↑¨
nimm die ersten neun und die letzten neunJetzt haben wir zwei Listen von
d d
Zeichenfolgen,/
Verkettungsreduzierung (kombinieren Sie die beiden Listen)⊃
enthüllen (weil die Reduktion den Rang von 1 auf 0 reduziert hat)' '⎕R','
PCRE R eplace Räume mit Komma↑
mischen (die alle Listen in einer einzigen Matrix)* In Dyalog Classic gilt
⍸
als⎕U2378
.quelle
~2|∘.+⍨⍳8
sein könnte∘.=⍨2|⍳8
2⍴⊂'Thanks'
Bubblegum , 59 Bytes
Probieren Sie es online!
quelle
Pyth ,
373635 Bytesisaacg wäre nicht stolz
Erläuterung:
Dabei wird ein einfaches Muster verwendet, das ich ein wenig reduziert habe. Wie folgt:
Wenn die
X
Koordinate gerade ist, verwenden Sie die geraden Zahlen0, 2, 4, 6
. Sonst1, 3, 5, 7
zY
.Wenn die
X
Koordinate kleiner als 5 ist, ist die Farbe (r
oderb
)r
. Sonst ist esb
.Probieren Sie es online!
edit : habe über nacht +40 rep auf 3 verschiedene antworten w00t
quelle
SOGL V0.12 , 31 Bytes
Probieren Sie es hier aus!
quelle
Javascript (89 Bytes):
Lesbar:
Probieren Sie es online!
quelle
Gelee , 27 Bytes
Ein vollständiges Programm, das die gewünschte Ausgabe druckt.
Probieren Sie es online!
Wie
quelle
Ruby ,
6360 BytesBitmasken-Magie speichert das Byte.
Probieren Sie es online!
quelle
PowerShell , 63 Byte
Probieren Sie es online!
Durchläuft eine Schleife
0,1,2,5,6,7
und jede Iteration wird$i
auf die aktuelle Nummer gesetzt. Dann geht es vorbei0,2,4,6
. Für jede innere Schleife erstellen wir eine Zeichenfolge, die mit$i,
der aktuellen Nummer der inneren Schleife beginnt und mit der Angabe, ob sie$i
gerade oder ungerade ist (was uns0,2,4,6
ein und1,3,5,7
das andere Mal ergibt ), und mit der Angabe, ob sie größerr
oder kleiner ist, verknüpft wird -oder- zu qualifizieren . Diese Zeichenfolgen verbleiben alle in der Pipeline, und der implizite Zeitpunkt der Programmbeendigung gibt uns kostenlose Zeilenumbrüche.b
$i
-g
e
5
Write-Output
quelle
J ,
48 44 40 3731 BytesProbieren Sie es online!
Wie es funktioniert
quelle
C # (.NET Core) , 96 Byte
Probieren Sie es online!
Im Wesentlichen nur eine Portierung auf C # von @ JonathanFrechs Antwort . Ich könnte mir keinen besseren Weg ausdenken, um zu rechnen.
quelle