Lua, 77 75 65 Bytes
x,v=z.rep,io.read()for a=1,v do print(x(0,a-1)..'1'..x(0,v-a))end
Nun, ich bin mir nicht sicher, ob lua die beste Sprache für diese Verkettung ist ... Aber hey, es gibt eine Chance. Ich werde sehen, ob Verbesserungen vorgenommen werden müssen.
BEARBEITEN:
Ich habe durch einen Unfall etwas herausgefunden, was ich ziemlich merkwürdig finde, aber es funktioniert.
In Lua weiß jeder, dass Sie Variablen Funktionen zuweisen können. Dies ist eine der nützlicheren CodeGolf-Funktionen.
Das heißt statt:
string.sub("50", 1, 1) -- = 5
string.sub("50", 2, 2) -- = 0
string.sub("40", 1, 1) -- = 4
string.sub("40", 2, 2) -- = 0
Du kannst das:
s = string.sub
s("50", 1, 1) -- = 5
s("50", 2, 2) -- = 0
s("40", 1, 1) -- = 4
s("40", 2, 2) -- = 0
Aber warte, Lua lässt etwas OOP zu. Sie könnten also möglicherweise sogar Folgendes tun:
z=""
s = z.sub
s("50", 1, 1) -- = 5
s("50", 2, 2) -- = 0
s("40", 1, 1) -- = 4
s("40", 2, 2) -- = 0
Das funktioniert auch und schneidet Charaktere.
Jetzt kommt hier der seltsame Teil. Sie müssen zu keinem Zeitpunkt eine Zeichenfolge zuweisen. Einfach machen:
s = z.sub
s("50", 1, 1) -- = 5
s("50", 2, 2) -- = 0
s("40", 1, 1) -- = 4
s("40", 2, 2) -- = 0
Wird funktionieren.
So können Sie den Unterschied visuell erkennen und sich die Golfergebnisse ansehen:
Verwenden von string (88 Zeichen)
string.sub("50", 1, 1)string.sub("50", 2, 2)string.sub("40", 1, 1)string.sub("40", 2, 2)
Zuweisen von string.sub zu einer Variablen (65 Zeichen)
s=string.sub s("50", 1, 1)s("50", 2, 2)s("40", 1, 1)s("40", 2, 2)
String.sub mit einem OOP-Ansatz zuweisen (64 Zeichen)
z=""s=z.sub s("50", 1, 1)s("50", 2, 2)s("40", 1, 1)s("40", 2, 2)
String.sub mit einem .. nil-Ansatz zuweisen? (60 Zeichen)
s=z.sub s("50", 1, 1)s("50", 2, 2)s("40", 1, 1)s("40", 2, 2)
Wenn jemand weiß, warum das funktioniert, würde ich mich interessieren.