Bir MM/DD
tarih ( 12/24
) ve bir başlangıç / bitiş tarihi aralığı ( 11/01 - 06/24
) verildiğinde, tarihin listelenen tarih aralığında olup olmadığını öğrenin.
Tarih aralıkları sıralı ( 05/01 - 11/01
) olabilir veya bir sonraki yıla ( 11/01 - 05/01
) sarılabilir .
Örnekler:
12/24
içinde11/01 - 06/24
= Doğru06/24
içinde11/01 - 06/24
= Doğru06/24
içinde06/24 - 06/24
= Doğru06/24
içinde11/01 - 06/23
= Yanlış07/24
içinde11/01 - 06/24
= Yanlış07/24
içinde05/01 - 11/01
= Doğru07/24
içinde07/23 - 07/20
= Doğru
Yıllar mater yok. Tarih ve / veya tarih aralığının geçmiş veya gelecek herhangi bir yıl için geçerli olduğu varsayılır.
Bitiş tarihi her zaman başlangıç tarihinden sonra olacaktır. Bitiş tarihi sayısal olarak başlangıç tarihinden daha azsa, bir sonraki yıla geçtiğimizi varsayıyoruz.
Üç giriş değişkeni herhangi bir yöntemle (args, HTTP, stdin, vb.) Ve herhangi bir biçimde (dize, JSON, dizi vb.) Olabilir.
Yanıt, boolean
evet / hayır / doğru / etc .. dizesinin herhangi bir şekli olabilir . En kısa kod kazanır.
Argleri yerleşik bir işleve geçiremezsiniz.
11/01 - 06/24 includes 06/24?
['06', '24']
başka bir şey []
mi yoksa ne demek istiyorsun?
2017
ve gelecek yıl konuştuğumuzu varsayalım 2018
. Bunun 06/24
anlamını nasıl belirleyeceğimiz 2018
ve dolayısıyla True
daha önce 2017
ve daha False
önce olması gerektiği için nasıl olması gerekir 11/01
?
date > start & date < end
" - O zaman bazı test durumlarınız yanlış. Ne demek istediğini düşünüyorum start<=date<=end
.
['MM', 'DD']
?