Uma vez eu escrevi um programa JavaScript que usaria como entrada uma string e um caractere e removeria todos os caracteres, exceto o primeiro e o caractere fornecido como entrada, um por um.
Por exemplo, computar isso com entradas codegolf.stackexchange.com
e e
para o caractere gera:
codegolf.stackexchange.com
cdegolf.stackexchange.com
cegolf.stackexchange.com
ceolf.stackexchange.com
celf.stackexchange.com
cef.stackexchange.com
ce.stackexchange.com
cestackexchange.com
cetackexchange.com
ceackexchange.com
ceckexchange.com
cekexchange.com
ceexchange.com
ceechange.com
ceehange.com
ceeange.com
ceenge.com
ceege.com
ceee.com
ceeecom
ceeeom
ceeem
ceee
Mantém o primeiro caractere e todos os e
s. Todos os outros caracteres são removidos um por um.
Sua tarefa é escrever um programa (ou função) que recebe duas entradas e saídas (ou retorna) uma sequência que realiza esse efeito.
Especificações
- Você pode assumir que a sequência não conterá nenhuma nova linha.
- A segunda entrada sempre será um caractere.
- Se a resposta estiver na forma de uma função, você poderá retornar uma matriz de cadeias contendo cada linha na saída.
- A saída pode conter uma nova linha à direita.
Casos de teste
Test Cases
, s
:
Test Cases
Tst Cases
Ts Cases
TsCases
Tsases
Tsses
Tsss
Make a "Ceeeeeeee" program
, e
:
Make a "Ceeeeeeee" program
Mke a "Ceeeeeeee" program
Me a "Ceeeeeeee" program
Mea "Ceeeeeeee" program
Me "Ceeeeeeee" program
Me"Ceeeeeeee" program
MeCeeeeeeee" program
Meeeeeeeee" program
Meeeeeeeee program
Meeeeeeeeeprogram
Meeeeeeeeerogram
Meeeeeeeeeogram
Meeeeeeeeegram
Meeeeeeeeeram
Meeeeeeeeeam
Meeeeeeeeem
Meeeeeeeee
Hello World!
, !
:
Hello World!
Hllo World!
Hlo World!
Ho World!
H World!
HWorld!
Horld!
Hrld!
Hld!
Hd!
H!
Hello World!
, z
:
Hello World!
Hllo World!
Hlo World!
Ho World!
H World!
HWorld!
Horld!
Hrld!
Hld!
Hd!
H!
H
alphabet
, a
:
alphabet
aphabet
ahabet
aabet
aaet
aat
aa
upperCASE
, e
:
upperCASE
uperCASE
uerCASE
ueCASE
ueASE
ueSE
ueE
ue
Isso é código-golfe , então o código mais curto (em bytes) vence.
Meeeeeeeeegram