Formato temporale di gioco incrementale
Obbiettivo
I giochi incrementali hanno spesso un conto alla rovescia che esprime i giorni, le ore, i minuti e i secondi fino al completamento di un'attività. A seconda dello spazio disponibile, possono essere formattati come:
2d 13h
23h 59m 48s
14m
3h 0m 0s
L'obiettivo di questo codice golf è scrivere una funzione o un programma che esegua questa formattazione.
ingressi
- Il numero totale di secondi.
- Il numero massimo di segmenti da produrre.
Produzione
- I segmenti includono:
- 0 settimane
- 0 giorni
- Ore 0h
- 0m minuti
- 0 secondi
- Ogni segmento è separato da un singolo spazio.
- I segmenti visualizzati devono essere contigui. Ad esempio, non mostrerai ore e secondi senza mostrare i minuti, anche se ci sono zero minuti.
- I valori a una cifra non hanno zeri iniziali, anche se un valore di zero deve essere indicato come
0
. - I valori sono arrotondati per difetto.
- Il primo segmento visualizzato è il primo valore diverso da zero.
Casi test
seconds segments output
0 1 0s
123 1 2m
123 2 2m 3s
123 3 2m 3s
82815 3 23h 0m 15s
307891 2 3d 13h
307891 4 3d 13h 31m 31s
604800 1 1w
604800 6 1w 0d 0h 0m 0s
vincente
La soluzione di conteggio di byte più bassa in una settimana vincerà "accettazione".
Le modifiche
- Chiarito quale segmento è il primo, come mostrato negli esempi.
- Aggiunto test case 4 come da richiesta.
3d
? "Il primo segmento visualizzato è il primo valore diverso da zero"
307891 1
?0w
oppure1w
.