Dies ist eine gute Herausforderung für Anfänger und ein guter Zeitkiller.
Ich sagte nur ein -natürliches- Protokoll, weil der Titel zu kurz war, das hat nichts mit Logarithmen zu tun.
Gegeben 2 Variablen:
- Die Anzahl der Ameisen
n
. - Die Breite des Protokolls
w
.
Ausgabe eines Protokolls der Breite w
mit n
Ameisen (Beispiel gezeigt w=3
, n=6
)
| |
| \O/ \O/ \O/ |
| -O- -O- -O- |
| /o\ /o\ /o\ |
| ^ ^ ^ |
| |
| \O/ \O/ \O/ |
| -O- -O- -O- |
| /o\ /o\ /o\ |
| ^ ^ ^ |
| |
Eine einzelne Ameise sieht so aus:
\O/ # Upper-case O
-O- # Upper-case O
/o\ # Lower-case o
^
Ein paar Ameisengesetze:
- Ameisen dürfen sich und den Rand des Baumstamms nicht direkt berühren, sie berühren lieber Leerzeichen.
- Jede Ameisenreihe muss
w
breit sein, mitn/w
Ameisenreihen. - Ameisen brauchen immer einen Stamm, die Stammbreite ist garantiert größer als 0.
- Ameisen brauchen auch Ameisen, die Anzahl der Ameisen ist garantiert größer als 0.
- Ameisen sind auch überraschend gut organisiert, sie füllen ein Protokoll von links nach rechts, von oben nach unten; als würden sie ein Buch lesen.
Ameisenproben
w = 3, n = 5
| |
| \O/ \O/ \O/ |
| -O- -O- -O- |
| /o\ /o\ /o\ |
| ^ ^ ^ |
| |
| \O/ \O/ |
| -O- -O- |
| /o\ /o\ |
| ^ ^ |
| |
w = 1, n = 1
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
w = 1, n = 3
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
| \O/ |
| -O- |
| /o\ |
| ^ |
| |
Das ist Code-Golf , die Person mit dem kleinsten bytecount gewinnt.
code-golf
ascii-art
code-golf
code-golf
kolmogorov-complexity
code-golf
string
unicode
code-golf
number
sequence
primes
palindrome
code-golf
game
decision-problem
code-golf
math
geometry
code-golf
graphical-output
interactive
code-golf
set-partitions
code-golf
number
arithmetic
restricted-source
code-golf
decision-problem
python
recursion
code-golf
ascii-art
code-golf
source-layout
code-golf
function
recursion
functional-programming
code-golf
game
combinatorics
permutations
code-golf
string
file-system
code-golf
string
hashing
code-golf
stack-exchange-api
code-golf
string
code-golf
math
number
arithmetic
polyglot
Magische Kraken-Urne
quelle
quelle
w>n
vor der rechten Hand mehr Platz sein sollte|
oder nicht, oder liegt es an uns?Ant-xamples
(ich hasse Wortspiele)Antworten:
Jelly ,
4443 BytesDurchgestrichen 44 ist nicht 44 bei Verwendung von
Probieren Sie es online!
Wie?
Ich habe darüber
w<n
in einem Kommentar gefragt, da es etwas mehrdeutig ist.Wenn das Protokoll ameisenweit sein muss
w
und nicht nur die Ameisenw
, kostet es zwei Bytes:Dies funktioniert genauso wie zuvor, mit der Ausnahme, dass kein einzelnes Leerzeichen vorangestellt wird, um die erste, leere Zeile zu bilden. Es wird eine ganze zusätzliche Reihe von Ameisen erstellt und alle Zeilen mit Ausnahme der nachfolgenden Leerzeile abgeschnitten.
quelle
V ,
70, 68 BytesProbieren Sie es online!
Das ist mir noch nie passiert, aber ein bekannter Fehler hat mir tatsächlich Bytes erspart!
Es ist schwer zu erklären, was genau vor sich geht, aber wenn Sie versuchen, etwas nach Spalten zu duplizieren, wird V vor dem Duplizieren um eine Spalte verschoben. Welches ist, warum ursprünglich ich tat:
die nicht den doppelten Operator verwendet. Da wir jedoch bereits eine Zeile verschieben mussten, können wir dies einfach tun
quelle
PHP> = 7.1, 150 Bytes
Online Version
quelle
Python 2, 144 Bytes
Probieren Sie es online!
quelle
w=1
&n=3
mit deiner Version).05AB1E , 47 Bytes
Probieren Sie es online!
Erläuterung
quelle
SOGL ,
747174 BytesErster Teil: Funktion, die einen leeren Protokollteil ausgibt
Der zweite Teil hat eine komprimierte Zeichenfolge
"nΤ↕¬┐α┐PΝld‘
, bei der es sich um die Ameise handelt. Es dekomprimiert zu\-/ OOo^/-\
. Das ist die Ameise (mit Abstand nach rechts), wird aber dann von oben nach unten nach rechts gerne genommenEs wird so gespeichert, weil die
┼
Funktion solche Zeichenfolgen anfügt (das liegt daran, dass Sie die Zeichenfolge multiplizieren können, um ihr mehrere Instanzen hinzuzufügen). Das Teil selbst: Funktion, die nach einer Zahl auf dem Stapel fragt, die angibt, wie viele Ameisen gezogen werden sollen.Und die Hauptfunktion:
quelle
Perl 5 , 159 Bytes
Probieren Sie es online!
Perl 5 , 152 Bytes
Ein weiterer basiert auf der Python-Lösung:
Probieren Sie es online!
quelle
Mathematica 210 Bytes
Denken, dass ich eine Mathematica-basierte Golfsprache machen muss.
quelle
Python 2, 166 Bytes
quelle
Holzkohle , 43 Bytes
Probieren Sie es online! Link ist eine ausführliche Version des Codes. Erläuterung:
Eingabe
w
.Geben Sie ein
n
, erstellen Sie eine Zeichenfolge vonn
Leerzeichen und teilen Sie sie in Zeilen mit einer Länge vonw
(mit Ausnahme des letzten Stücks, das möglicherweise kleiner ist). Schleife über diese Zeilen.Drucken Sie die Seiten des Protokollbereichs aus.
quelle