Ngày trong tuần và tháng trong năm dường như được chú ý rất nhiều nhưng dường như không ai quan tâm đến tuần trong năm. Tôi tin rằng đã đến lúc thay đổi điều đó, vì vậy công việc của bạn là viết một chương trình hoặc chức năng mà khi được đưa ra một ngày sẽ xuất ra một số nguyên từ 1 đến 53 tương ứng với tuần hiện tại của năm.
Đối với mục đích của thử thách này, chúng tôi sẽ nói rằng Chủ nhật đầu tiên của năm đánh dấu sự khởi đầu của năm, vì vậy trường hợp duy nhất khi ngày 1 tháng 1 được coi là tuần 1 là khi rơi vào Chủ nhật.
- Đầu vào có thể là bất kỳ định dạng ngày nào không bao gồm rõ ràng số tuần (chỉ xác định định dạng trong câu trả lời của bạn) cho các ngày giữa
1JAN1900
và31DEC2100
. - Đầu ra là một số nguyên từ 1 đến 53
- Bạn có thể sử dụng bất kỳ phương pháp tiêu chuẩn nào để cung cấp đầu vào / đầu ra.
Các trường hợp thử nghiệm
17MAY2017 -> 20
3JAN2013 -> 53
1JAN2017 -> 1
17MAY1901 -> 19
31DEC2100 -> 52
7JUL2015 -> 27
- Đây là môn đánh gôn để áp dụng tất cả các quy tắc chơi gôn tiêu chuẩn và mã ngắn nhất (tính bằng byte) sẽ thắng.
07/07/2015
) không? Có thể 7JUL2015
được 07JUL2015
không?
7/7/2015
, 2015-07-07
cũng có giá trị.
%U
: Như @J_Lard chỉ ra, bạn cần quan tâm xem liệu tuần 0 là tuần 52 hay 53 của năm trước. Đó là tuần 53 năm 2001, 2007, 2013, 2018, 2024, 2029 và lặp lại theo chu kỳ 28 năm. Những năm khác là tuần 52.