Desafio
Já viu aqueles títulos de trailers de filmes (Marciano, Interestelar etc.) em que eles têm grandes lacunas entre as letras se espalhando lentamente?
O desafio é recriar esse efeito, com base em uma seqüência, multiplicador de gap e direção, inserindo a quantidade apropriada de espaços entre as letras.
Exemplo
Entrada : 'INTERSTELLAR', multiplicador de gap: 1.0, Direção: Aumentando para dentro
Output: I N T E R S T E L L A R
O espaçamento é: [1, 2, 3, ..., 3, 2, 1]; substituindo os espaços por '.' para demonstrar melhor o espaçamento:
I.N..T...E....R.....S......T.....E....L...L..A.R
Entrada : 'INTERSTELLAR', multiplicador de gap: 0,5, Direção: Aumentando para dentro
Output: IN T E R S T E L L AR
O espaçamento é multiplicado por 0,5; portanto, obtemos [0, 1, 1, 2, ... 2, 1, 1, 0] da divisão inteira; usando '.':
IN.T.E..R..S...T..E..L.L.AR
Entrada : 'CODEGOLF', multiplicador de gap: 2,0, Direção: Aumentando para fora
Output: C O D E G O L F
O espaçamento é multiplicado por 2, aumentando para fora, portanto obtemos [8,6,4,2,4,6,8]; substituindo por '.':
C........O......D....E..G....O......L........F
Entrada : 'CODEGOLF', multiplicador de gap: 0,4, Direção: Aumentando para fora
Output: C O DEGO L F
O espaçamento é multiplicado por 0,4, aumentando para fora, portanto obtemos [1,1,0,0,0,1,1]; substituindo por '.':
C.O.DEGO.L.F
Regras
- São necessárias 3 entradas: string, multiplicador de gap e direção
- Se o comprimento da string de entrada for ímpar (mesmo no número de intervalos), por exemplo, 'OLÁ!', O espaçamento das 2 lacunas mais internas deve ser o mesmo
H E L L O
- O multiplicador de direção e intervalo pode ser analisado da maneira que desejar, por exemplo, você pode usar -2 como 'aumentando para dentro com um multiplicador de 2', 1 como 'aumentando para fora com um multiplicador de 1', etc.
- Só é necessário usar espaços, no entanto, é um bônus se o preenchimento de caracteres for personalizável.
Animação de referência
Divirta-se jogando golfe!
C..O....D......E........G......O....L..F
Increasing
para1 => Inward, 0 => Outward
ou vice-versa.