Przyrostowy format czasu gry
Cel
Gry przyrostowe często mają stoper odliczający dni, godziny, minuty i sekundy do zakończenia zadania. W zależności od dostępnego miejsca można je sformatować jako:
2d 13h
23h 59m 48s
14m
3h 0m 0s
Celem tego kodu golfa jest napisanie funkcji lub programu, który wykonuje to formatowanie.
Wejścia
- Łączna liczba sekund.
- Maksymalna liczba segmentów do wydrukowania.
Wynik
- Segmenty obejmują:
- 0 tygodni
- 0 dni
- 0 godzin
- 0 minut
- 0 sekund
- Każdy segment jest oddzielony pojedynczą spacją.
- Wyświetlane segmenty muszą być ciągłe. Na przykład nie będziesz wyświetlać godzin i sekund bez wyświetlania minut, nawet jeśli minut jest zero.
- Wartości jednocyfrowe nie mają zer wiodących, chociaż wartość zero musi być pokazana jako
0
. - Wartości są zaokrąglane w dół.
- Pierwszy wyświetlany segment to pierwsza wartość niezerowa.
Przypadki testowe
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
Zwycięski
Rozwiązanie o najniższej liczbie bajtów w ciągu tygodnia zyska „akceptację”.
Edycje
- Wyjaśniono, który segment jest pierwszy, jak pokazano w przykładach.
- Dodano przypadek testowy 4 zgodnie z żądaniem.
3d
? „Pierwszy wyświetlany segment to pierwsza wartość niezerowa”
307891 1
?0w
lub1w
.