Der Titel sagt schon alles. Ihr Ziel ist es, ein Programm zu schreiben, das ein Rechteck aus Zeichen bildet, das gedreht und erneut ausgeführt werden kann, um die Anzahl der durchgeführten Umdrehungen um 90 ° gegen den Uhrzeigersinn (CCW) auszugeben.
Zum Beispiel, wenn das 3 × 2-Programm
abc
def
Gelöst das Problem, würde es zunächst 0 und aufeinanderfolgende Drehungen von 90 ° nach links ausgeben
cf fed da
be cba eb
ad fc
würde jeweils 1, 2 und 3 ausgeben.
Das Verwenden von Kommentaren macht dies zu einer trivialen Aufgabe für die meisten Sprachen. In Ruby kann dies beispielsweise in einem 7 × 7-Rechteck erfolgen:
###p###
### ###
###1###
p 0#2 p
###3###
### ###
###p###
Die Herausforderung besteht darin, dies ohne jegliche Kommentare zu tun .
Wertung
Ihre Punktzahl ist w * h, die Fläche Ihres Rechtecks. Zeilenumbrüche sind ausgeschlossen. Mit anderen Worten, Code-Golf, Newlines zählen nicht.
Die Punktzahl für das Ruby-Beispiel ist 49 (obwohl es natürlich ungültig ist, da es Kommentare enthält).
Anmerkungen
- Ihr Code muss wirklich rechteckig sein und darf keine fehlenden Zeichen am Zeilenende enthalten.
- Wenn Sie möchten, können Sie anstelle von 0 1 2 3 auch andere zulässige "mod 90 °" -Werte ausgeben. 8 ist also in Ordnung anstelle von 0 und -1 ist in Ordnung anstelle von 3 usw.
- Die Ausgabe kann an die Konsole oder in eine Datei gehen.
- Es gelten Standardlücken.
Ich hoffe, dass dies, meine erste Frage, einige Leute wirklich fasziniert. Genießen!
echo 0;exit;e
in Bash ist also erlaubt?