チャレンジ
ゆっくりと広がる文字の間に大きなギャップがある映画の予告編タイトル(つまり、火星、インターステラーなど)を見たことがありますか?
課題は、文字間に適切な量のスペースを挿入することにより、文字列、ギャップ乗数、および方向を指定してこの効果を再現することです。
例
入力:「INTERSTELLAR」、ギャップ乗数:1.0、方向:内向きに増加
Output: I N T E R S T E L L A R
間隔は次のとおりです:[1、2、3、...、3、2、1]; スペースを「。」に置き換えます 間隔をよりよく示すために:
I.N..T...E....R.....S......T.....E....L...L..A.R
入力:「INTERSTELLAR」、ギャップ乗数:0.5、方向:内向きに増加
Output: IN T E R S T E L L AR
間隔に0.5が乗算されるため、整数除算から[0、1、1、2、... 2、1、1、0]が得られます。「。」を使用:
IN.T.E..R..S...T..E..L.L.AR
入力: 'CODEGOLF'、ギャップ乗数:2.0、方向:外側に向かって増加
Output: C O D E G O L F
間隔は2倍され、外側に向かって増加するため、[8,6,4,2,4,6,8]が得られます。「。」に置き換えます:
C........O......D....E..G....O......L........F
入力: 'CODEGOLF'、ギャップ乗数:0.4、方向:外側に向かって増加
Output: C O DEGO L F
間隔は0.4倍され、外側に向かって増加するため、[1,1,0,0,0,1,1]が得られます。「。」に置き換えます:
C.O.DEGO.L.F
ルール
- 3つの入力を受け取ります:文字列、ギャップ乗数、方向
- 入力文字列の長さが奇数(ギャップ数でも)の場合(例:「HELLO」)、最も内側の2つのギャップの間隔は同じである必要があります
H E L L O
- 方向とギャップ乗数は任意に解析できます。たとえば、-2を「乗数2で内向きに増加」、1を「乗数1で外に増加」などとして使用できます。
- スペースのみを使用する必要がありますが、キャラクターの塗りつぶしをカスタマイズできる場合はボーナスです。
参照アニメーション
ゴルフをお楽しみください!
C..O....D......E........G......O....L..F
Increasing
する1 => Inward, 0 => Outward
か、またはその逆に変更することで、これをもう少しシンプルにすることができます。