Dada uma sequência S
e uma lista de índices X
, modifique S
removendo o elemento em cada índice S
enquanto usa esse resultado como o novo valor de S
.
Por exemplo, dado S = 'codegolf'
e X = [1, 4, 4, 0, 2]
,
0 1 2 3 4 5 6 7 |
c o d e g o l f | Remove 1
c d e g o l f | Remove 4
c d e g l f | Remove 4
c d e g f | Remove 0
d e g f | Remove 2
d e f
Sua tarefa é executar esse processo, coletar os valores S
após cada operação e exibir cada um em uma nova linha em ordem. A resposta final seria
S = 'codegolf'
X = [1, 4, 4, 0, 2]
Answer:
codegolf
cdegolf
cdeglf
cdegf
degf
def
- Isso é código-golfe, então faça seu código o mais curto possível.
- Você pode assumir que os valores em
X
sempre são índices válidosS
e pode usar a indexação com base em 0 ou em 1. - A cadeia conterá apenas
[A-Za-z0-9]
- De qualquer
S
oux
podem por esvaziar. SeS
estiver vazio, segue-se quex
também deve estar vazio. - Você também pode usar
S
como uma lista de caracteres em vez de uma string. - Você pode imprimir a saída ou retornar uma lista de seqüências de caracteres. Os espaços em branco à esquerda e à direita são aceitáveis. Qualquer forma de saída é boa, desde que seja facilmente legível.
Casos de teste
S = 'abc', x = [0]
'abc'
'bc'
S = 'abc', x = []
'abc'
S = 'abc', x = [2, 0, 0]
'abc'
'ab'
'b'
''
S = '', x = []
''
S = 'codegolfing', x = [10, 9, 8, 3, 2, 1, 0]
'codegolfing'
'codegolfin'
'codegolfi'
'codegolf'
'codgolf'
'cogolf'
'cgolf'
'golf'
len(x)+1
seqüências de caracteres.
S
como uma lista de caracteres?