Biorąc pod uwagę MM/DD
datę ( 12/24
) i zakres dat rozpoczęcia / zakończenia ( 11/01 - 06/24
), dowiedz się, czy data mieści się w podanym zakresie dat.
Zakresy dat mogą być sekwencyjne ( 05/01 - 11/01
) lub obejmować kolejny rok ( 11/01 - 05/01
).
Przykłady:
12/24
jest w11/01 - 06/24
= Prawda06/24
jest w11/01 - 06/24
= Prawda06/24
jest w06/24 - 06/24
= Prawda06/24
jest w11/01 - 06/23
= False07/24
jest w11/01 - 06/24
= False07/24
jest w05/01 - 11/01
= Prawda07/24
jest w07/23 - 07/20
= Prawda
Lata nie mają znaczenia. Zakłada się, że data i / lub zakres dat będzie obowiązywał dla dowolnego roku przeszłego lub przyszłego.
Data końcowa zawsze będzie późniejsza niż data początkowa. Jeśli data końcowa jest liczbowo krótsza niż data początkowa, zakładamy, że zbliżamy się do następnego roku.
Trzy zmienne wejściowe mogą być za pomocą dowolnej metody (args, HTTP, stdin itp.) I w dowolnym formacie (ciąg, JSON, tablica itp.)
Odpowiedź może być boolean
dowolną postacią ciągu tak / nie / poprawny / itp. Najkrótszy kod wygrywa.
Nie można po prostu przekazywać argumentów do wbudowanej funkcji.
11/01 - 06/24 includes 06/24?
['06', '24']
, jak w innym przypadku []
lub co masz na myśli?
2017
i w przyszłym roku 2018
. Jak mamy określić te 06/24
środki, 2018
a zatem powinniśmy być, True
a nie 2017
dlatego, False
że tak było wcześniej 11/01
?
date > start & date < end
” - W takim razie niektóre z twoich przypadków testowych są nieprawidłowe. Myślę, że masz na myśli start<=date<=end
.
['MM', 'DD']
?