Zadanie
Napisz program lub funkcję, która oblicza nazwę dnia tygodnia podaną przez użytkownika.
Wejście wyjście
Wejściowy jest ciągiem YYYYMMDD
.
Przykład wartości wejściowych:
20110617: 17 czerwca 2011 r 19040229: 29 lutego 1904 r 06661225: 25 grudnia 666 00000101: 1 stycznia 0 99991231: 31 grudnia 9999
Możesz założyć, że wszystkie dane wejściowe są prawidłowe. Pamiętaj, że rok zero jest ważny.
Dane wyjściowe to liczba całkowita pomiędzy 0
i 6
. Każda liczba całkowita reprezentuje nazwę dnia tygodnia. Możesz swobodnie decydować, która liczba całkowita reprezentuje nazwę dnia tygodnia, taką jak ta
0: poniedziałek 1: wtorek 2: środa ... 6: niedziela
(w kolejności) lub ten
0: poniedziałek 1: środa 2: niedziela ... 6: sobota
(nie w porządku).
Przypadki testowe
Dane wyjściowe z dnia tygodnia (w tym przykładzie użyto [0..6 -> poniedziałek.. niedziela).) 20110617 piątek 4 19500101 niedziela 6 22220202 Sobota 5 19000228 Środa 2 19000301 Czwartek 3 19450815 Środa 2 19040229 Poniedziałek 0 19040301 Wtorek 1 17760704 Czwartek 3 20000228 poniedziałek 0 20000229 Wtorek 1 20000301 Środa 2 20121223 niedziela 6 00000401 Sobota 5 66660606 Środa 2 59161021 Sobota 5
Ograniczenie
Nie wolno używać żadnych funkcji / klas / ..., które są związane ze znacznikiem czasu lub datą, takich jak Date
klasa w Java
/ JavaScript
/ ActionScript
lub getdate
funkcja w PHP
.
Powinieneś używać kalendarza gregoriańskiego , z którego korzysta obecnie wiele osób.
Oczywiście, najkrótszy kod wygrywa. Jeśli dwa kody mają tę samą długość, wygrywa kod z najwyższą liczbą głosów.
(Due: Gdy jest więcej niż 5 kodów, które mają więcej niż (lub równe) +1
głosów).
echo 4
.