Dato un elenco ordinato di stringhe di lettere dello stesso caso (az XOR AZ) in cui ogni stringa è preceduta da 0 o più caratteri spazio (), genera lo stesso elenco ma con le stringhe ordinate a ciascun livello di rientro. Le profondità di rientro in genitori diversi contano come elenchi distinti ai fini dell'ordinamento.
Esempio
Se il tuo input è:
bdellium
fox
hound
alien
aisle
wasabi
elf
alien
horseradish
xeno
irk
wren
tsunami
djinn
zebra
il tuo output dovrebbe essere
aisle
horseradish
xeno
wasabi
alien
elf
bdellium
alien
fox
hound
djinn
zebra
irk
tsunami
wren
Se lo desideri, pensalo come un elenco di directory e devi ordinare i nomi all'interno di ciascuna directory.
minutiae
- Un oggetto può essere rientrato da qualsiasi numero di spazi. Se è indentato dallo stesso numero di spazi dell'elemento precedente, appartiene alla stessa gerarchia di ordinamento dell'elemento precedente. Se è indentato da più spazi, è l'inizio di una nuova sotto-gerarchia.
- Se una linea è indentata da meno spazi rispetto alla linea sopra di essa, si collega al sottogruppo più vicino sopra di essa con lo stesso # o meno spazi prima di essa (come il rafano nell'esempio sopra, che si collega al gruppo wasabi sopra di essa perché wasabi è il primo oggetto sopra di esso a non avere più spazi del rafano)
- È necessario preservare il livello di rientro di ciascun elemento di input nell'output
- Le schede nell'output non sono consentite
- La prima riga dell'ingresso non sarà mai rientrata
- Il programma deve gestire almeno una delle stringhe maiuscole e minuscole; non deve gestire entrambi.
punteggio
Questo è un codice-golf , quindi vince la risposta che utilizza il minor numero di byte.
['a','..b', '.c', '..d']
, quale dovrebbe essere l'output? ['a','..b', '.c', '..d']
o ['a','.c','..b', '..d']
o qualche altra cosa? (Sto usando '.'
invece di spazio per chiarezza visiva).