Diberi MM/DD
tanggal ( 12/24
) dan rentang tanggal mulai / berakhir ( 11/01 - 06/24
), cari tahu apakah tanggal tersebut dalam rentang tanggal yang tercantum.
Rentang tanggal dapat berurutan ( 05/01 - 11/01
) atau beralih ke tahun berikutnya ( 11/01 - 05/01
).
Contoh:
12/24
ada di11/01 - 06/24
= True06/24
ada di11/01 - 06/24
= True06/24
ada di06/24 - 06/24
= True06/24
dalam11/01 - 06/23
= Salah07/24
dalam11/01 - 06/24
= Salah07/24
ada di05/01 - 11/01
= True07/24
ada di07/23 - 07/20
= True
Tahun tidak mater. Tanggal dan / atau rentang tanggal diasumsikan berlaku untuk tahun lalu atau masa depan.
Tanggal akhir akan selalu setelah tanggal mulai. Jika tanggal akhir secara numerik lebih kecil dari tanggal mulai, kami anggap kami akan kembali ke tahun berikutnya.
Tiga variabel input dapat melalui metode apa saja (args, HTTP, stdin, dll.) Dan dalam format apa pun (string, JSON, array, dll.)
Respons dapat berupa boolean
atau bentuk apa pun dari string ya / tidak / benar / dll. Kode terpendek menang.
Anda tidak bisa hanya meneruskan args ke fungsi bawaan.
sumber
['MM', 'DD']
?11/01 - 06/24 includes 06/24?
['06', '24']
apakah benar[]
atau apa maksud Anda?2017
dan tahun depan2018
. Bagaimana kita seharusnya menentukan06/24
cara itu2018
dan dengan demikian seharusnyaTrue
lebih daripada2017
danFalse
karena itu sebelumnya11/01
?date > start & date < end
" - Lalu beberapa test case Anda salah. Saya pikir apa yang Anda maksud adalahstart<=date<=end
.Jawaban:
Python , 31 byte
Cobalah online!
Mengambil input sesuai
MM/DD
urutantarget, start, end
.sumber
JavaScript (ES6),
2620 byteOutput adalah
0
jikaa
terletak dalam jangkauanb
...c
,1
jika tidak. Sunting: Disimpan 6 byte berkat @nwellnhof.sumber
(a,b,c)=>b>c^b>a^a>c
?b>a^a>c
, tapi aku kemudian mengabaikan perbaikan sederhana ...Haskell , 28 byte
Cobalah online!
Terima kasih kepada Leo untuk trik xor'ing the Booleans dengan
/=
.Haskell , 33 byte
Cobalah online!
sumber
show
Trik Anda keren, tetapi Anda dapat XOR ketiga elemen dengan cara yang lebih langsung dengan foldl1: tio.run/…JavaScript (ES6), 31 byte
Mengambil input sebagai 3 string dalam
MM/DD
format: date , range_from , range_to . Mengembalikan boolean.Uji kasus
Tampilkan cuplikan kode
sumber
MM/DD
format Anda bisa menggunakan penyortiran string. Ide bagus.Haskell ,
3837 byteCobalah online!
Disimpan 1 byte berkat Laikoni
sumber
(d#b)e=
.Perl 6 ,
333129 byteCobalah online!
Mengambil daftar yang berisi awal, tanggal, dan akhir.
-2 byte terima kasih kepada Ramillies.
sumber
@_[0]
dapat ditulis sebagai.[0]
dan[(whatever)] @_
sebagai[(whatever)] $_
. Anda hanya perlu menyebutnya seperti$f(($s,$d,$e))
.Perl 5 , 60 byte
59 byte kode +1
-a
Cobalah online!
Memasukkan:
start_date end_date target_date
sumber