Dato un elenco ordinato di numeri (possibilmente con zeri iniziali), disponi i numeri verticalmente, quindi lascia che tutti gli zeri scendano fino in fondo e tutti gli strapiombi cadano nello slot più in basso aperto. Emette gli interi risultanti, rimuovendo gli zeri iniziali.
Esempio lavorato
Supponiamo che ci sia stato dato quanto segue come input:
['0000312941295', '239124000124581598', '32852353800451258', '10235923505185190', '1491359102149']
Per prima cosa lo sistemiamo verticalmente:
0000312941295
239124000124581598
32852353800451258
10235923505185190
1491359102149
Quindi, colonna per colonna, rilascia gli zeri "attraverso" gli altri numeri in modo che si appoggino sul fondo e "spingano" gli altri numeri verso l'alto. Ciò comporterebbe i primi due passi come segue:
2000312941295
339124000124581598
12852353800451258
10235923505185190
0491359102149
^
2300312941295
329124000124581598
14852353800451258
10235923505185190
0091359102149
^
2390312941295
328124000124581598
14252353800451258
10935923505185190
0001359102149
^
...
2391312941295
328524538124581598
14232323525451258
10915991001185190
0000350000049
^
Quindi, rilasciare tutte le sporgenze come se la gravità le stesse tirando giù come sabbia.
2391312941295
3285245381245 1598
14232323525458258
10915991001181190
00003500000495
^
2391312941295
3285245381245 598
14232323525458158
10915991001181290
000035000004951
^
...
2391312941295
3285245381245
14232323525458159
10915991001181258
000035000004951908
^
Infine, genera questi numeri, rimuovendo gli zeri iniziali. Per il nostro esempio lavorato, output:
[2391312941295, 3285245381245, 14232323525458159, 10915991001181258, 35000004951908]
Per un altro esempio, supponiamo che input di [1234000,12345678,1234,12340608,12341234]
.
1234000
12345678
1234
12340608
12341234
Elimina gli zeri:
1234
12345678
1234163
12340208
12340004
Rilascia le rimanenti cifre sporgenti:
1234
1234567
12341638
12340208
12340004
L'output è [1234, 1234567, 12341638, 12340208, 12340004]
.
Regole
- L'input può contenere zeri iniziali. L'output non deve contenere zeri iniziali.
- Se applicabile, puoi supporre che l'input / output si adatti al tipo intero nativo della tua lingua.
- L'input e l'output possono essere forniti con qualsiasi metodo conveniente .
- È accettabile un programma completo o una funzione. Se una funzione, è possibile restituire l'output anziché stamparlo.
- Sono vietate le scappatoie standard .
- Si tratta di code-golf quindi si applicano tutte le normali regole del golf e vince il codice più breve (in byte).
and all overhangs drop to the bottom-most open slot
è stata una buona soluzione alla mia sfida rotta :).
. 1234
è molto diverso dall'output 1234
.
14232323525458159
14232323525458160