Begeistert von einem Youtube-Video eines anderen PPCG-Benutzers ...
Ihre Herausforderung besteht darin, mit ASCII-Kunst eine Minecraft-Burgmauer aus Andesit und Diorit zu zeichnen. Die Form der Wand ist das Cantor Set . Zum Nachschlagen wird das Cantor-Set erstellt, indem die folgenden N Male wiederholt werden :
- Verdreifache den aktuellen Schritt
- Ersetzen Sie die mittlere durch ein Leerzeichen
- Fügen Sie eine vollständige Zeile darunter ein
Dadurch wird für die ersten vier Schritte Folgendes erstellt:
*
* *
***
* * * *
*** ***
*********
* * * * * * * *
*** *** *** ***
********* *********
***************************
Ihre Herausforderung ist jedoch nicht ganz so einfach. Sie sehen, nachdem das Cantor-Set wirklich groß geworden ist, wird es langweilig, denselben Charakter immer und immer wieder zu betrachten. Also werden wir das ändern, indem wir eine abwechselnde Reihe von Sternchen *
und Pfundzeichen überlagern #
. Sie sollten alle drei Zeichen horizontal und jede Zeile vertikal abwechseln. (Lassen Sie die Leerzeichen natürlich unverändert.) Das zweite Beispiel lautet beispielsweise:
* *
###
und das dritte Beispiel wird:
* * * *
### ###
***###***
Der Vollständigkeit halber hier die Beispiele vier und fünf:
#4
* * * * * * * *
### ### ### ###
***###*** ***###***
###***###***###***###***###
#5
* * * * * * * * * * * * * * * *
### ### ### ### ### ### ### ###
***###*** ***###*** ***###*** ***###***
###***###***###***###***### ###***###***###***###***###
***###***###***###***###***###***###***###***###***###***###***###***###***###***
Und ein Mega- Beispiel, die 6. Iteration:
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
### ### ### ### ### ### ### ### ### ### ### ### ### ### ### ###
***###*** ***###*** ***###*** ***###*** ***###*** ***###*** ***###*** ***###***
###***###***###***###***### ###***###***###***###***### ###***###***###***###***### ###***###***###***###***###
***###***###***###***###***###***###***###***###***###***###***###***###***###*** ***###***###***###***###***###***###***###***###***###***###***###***###***###***
###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###***###
Die Herausforderung
Sie müssen ein vollständiges Programm oder eine vollständige Funktion schreiben, die eine positive Ganzzahl für die Eingabe akzeptiert und die N -te Generation dieses Minecraft Castle-Fraktals ausgibt . Sie können Eingaben und Ausgaben mit jeder vernünftigen Methode vornehmen und müssen sich keine Gedanken über ungültige Eingaben machen (z. B. Zahlen unter 1, Gleitkommazahlen, Nichtzahlen usw.).
Die kürzeste Antwort, gemessen in Bytes, gewinnt!
Antworten:
Jelly ,
433635 BytesNur ein Anfang, ich bin sicher, das könnte kürzer sein.
Probieren Sie es online!
* Bei n > 5 wird die Ausgabe möglicherweise von Ihrem Browser umbrochen. Wenn Sie sie jedoch in einen nicht umbrochenen Editor kopieren, wird die richtige Ausgabe angezeigt.
Erläuterung
quelle
JavaScript (ES7),
132 bis125 ByteWobei
\n
das wörtliche Zeilenumbruchzeichen darstellt. ES6-Version für 141 Bytes:quelle
Python 2,
142138136 BytesDies ist der Code von hier , der dann für diese Herausforderung bearbeitet wird.
Werde später eine Erklärung posten.
Übrigens sind zwei Leerzeichen Registerkarten.
Bearbeiten Sie 1: 4 Bytes, die dank @DJMcMayhem gespeichert wurden.
Edit 2: 2 Bytes gespeichert dank @daHugLenny.
quelle
exec("s+=len(s)*' '+s;"*(n-i))
?Rubin,
115103102 BytesBasierend auf der Lösung von jsvnm zum Standard Cantor Set Golf .
-12 Bytes dank Jordan.
quelle
g=->{T.tr"*#","#*"}
s.map!{...}
anstelle vons=s.map{...};s
.+
zu ändern<<
, und es würde die gleiche Länge enden. Ich glaube dass
ist am Ende sowieso noch nötig - die Map befindet sich innerhalb einer.times
Schleife.J,
4745 BytesBasierend auf meiner Lösung für die Cantor Set Challenge.
Verwendung
Erläuterung
quelle
PHP, 159 Bytes
Nervenzusammenbruch
quelle