Data una stringa S
e un elenco di indici X
, modificare S
rimuovendo l'elemento in ciascun indice di S
mentre si utilizza quel risultato come nuovo valore di S
.
Ad esempio, dato 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
Il tuo compito è eseguire questo processo, raccogliere i valori di S
dopo ogni operazione e visualizzarli su una nuova riga in ordine. La risposta finale sarebbe
S = 'codegolf'
X = [1, 4, 4, 0, 2]
Answer:
codegolf
cdegolf
cdeglf
cdegf
degf
def
- Questo è code-golf, quindi abbassa il codice il più possibile.
- Puoi presumere che i valori in
X
siano sempre indici validi perS
e puoi utilizzare l'indicizzazione basata su 0 o 1. - La stringa conterrà solo
[A-Za-z0-9]
- Sia
S
ox
possono da svuotare. SeS
è vuoto, ne consegue chex
deve essere vuoto. - Puoi anche prendere
S
come un elenco di caratteri anziché una stringa. - È possibile stampare l'output o restituire un elenco di stringhe. Gli spazi bianchi iniziali e finali sono accettabili. Qualsiasi forma di output va bene purché sia facilmente leggibile.
Casi test
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
stringhe.
S
come un elenco di personaggi?