Herausforderung
Haben Sie jemals diese Trailer-Titel (Martian, Interstellar usw.) gesehen, bei denen sich zwischen den Buchstaben große Lücken ausbreiten?
Die Herausforderung besteht darin, diesen Effekt bei gegebener Zeichenfolge, Lückenmultiplikator und Richtung durch Einfügen einer angemessenen Anzahl von Leerzeichen zwischen den Buchstaben wiederherzustellen.
Beispiel
Eingabe : 'INTERSTELLAR', Gap-Multiplikator: 1.0, Richtung: nach innen steigend
Output: I N T E R S T E L L A R
Der Abstand beträgt: [1, 2, 3, ..., 3, 2, 1]; Ersetzen der Leerzeichen durch '.' um den Abstand besser zu demonstrieren:
I.N..T...E....R.....S......T.....E....L...L..A.R
Eingabe : 'INTERSTELLAR', Gap-Multiplikator: 0,5, Richtung: nach innen steigend
Output: IN T E R S T E L L AR
Der Abstand wird mit 0,5 multipliziert, daher erhalten wir [0, 1, 1, 2, ... 2, 1, 1, 0] aus der Ganzzahldivision; mit '.':
IN.T.E..R..S...T..E..L.L.AR
Eingabe : 'CODEGOLF', Gap-Multiplikator: 2,0, Richtung: Zunehmend nach außen
Output: C O D E G O L F
Der Abstand wird mit 2 multipliziert und nimmt nach außen zu, daher erhalten wir [8,6,4,2,4,6,8]; Ersetzen durch '.':
C........O......D....E..G....O......L........F
Eingabe : 'CODEGOLF', Gap-Multiplikator: 0,4, Richtung: Zunehmend nach außen
Output: C O DEGO L F
Der Abstand wird mit 0,4 multipliziert und nimmt nach außen zu, daher erhalten wir [1,1,0,0,0,1,1]; Ersetzen durch '.':
C.O.DEGO.L.F
Regeln
- Nimmt 3 Eingaben auf: String, Gap-Multiplikator und Richtung
- Wenn die Länge der Eingabezeichenfolge ungerade ist (gerade in Anzahl der Lücken), z. B. 'HELLO', sollte der Abstand der innersten 2 Lücken gleich sein
H E L L O
- Der Richtungs- und Lückenmultiplikator kann beliebig analysiert werden, z. B. können Sie -2 als "mit einem Multiplikator von 2 nach innen ansteigen", 1 als "mit einem Multiplikator von 1 nach außen ansteigen" usw. verwenden.
- Es ist nur erforderlich, Leerzeichen zu verwenden. Dies ist jedoch ein Bonus, wenn die Zeichenfüllung anpassbar ist.
Referenz-Animation
Viel Spaß beim Golfen!
C..O....D......E........G......O....L..F
Increasing
um1 => Inward, 0 => Outward
oder umgekehrt.