Năm ấy ta đã yêu
View as PDF
Submit solution
Points:
5.00 (partial)
Time limit:
1.0s
Memory limit:
256M
Input:
DAYCOUNT.INP
Output:
DAYCOUNT.OUT
Problem type
Allowed languages
C, C++, Java, Kotlin, Pascal, PyPy, Python, Scratch
Một ngày được biểu diễn bởi một bộ ba số nguyên gồm ngày, tháng và năm. Hai ngày liên tiếp trên lịch cách nhau đúng một ngày.
Trong bài toán này, lịch Gregory được sử dụng:
- Các tháng ~1, 3, 5, 7, 8, 10, 12~ có ~31~ ngày.
- Các tháng ~4, 6, 9, 11~ có ~30~ ngày.
- Tháng ~2~ có ~28~ ngày trong năm thường và ~29~ ngày trong năm nhuận.
- Một năm là năm nhuận nếu năm đó chia hết cho ~400~, hoặc chia hết cho ~4~ nhưng không chia hết cho ~100~.
Cho hai bộ ngày, tháng, năm. Hãy tính số ngày chênh lệch giữa hai mốc thời gian này. Nếu mốc thời gian giống nhau thì kết quả bằng ~0~.
Dữ liệu vào
Vào từ file văn bản DAYCOUNT.INP gồm:
- Dòng đầu tiên chứa ba số nguyên ~D_1, M_1, Y_1~, lần lượt là ngày, tháng và năm của mốc thứ nhất (~1 \leq D_1 \leq 31~, ~1 \leq M_1 \leq 12~, ~1 \leq Y_1 \leq 9999~).
- Dòng thứ hai chứa ba số nguyên ~D_2, M_2, Y_2~, lần lượt là ngày, tháng và năm của mốc thứ hai (~1 \leq D_2 \leq 31~, ~1 \leq M_2 \leq 12~, ~1 \leq Y_2 \leq 9999~).
- Hai mốc thời gian trong dữ liệu đều hợp lệ theo lịch đã mô tả.
Dữ liệu ra
Ghi ra file văn bản DAYCOUNT.OUT kết quả theo yêu cầu sau:
- In ra một số nguyên duy nhất là khoảng cách giữa hai mốc thời gian.
Ví dụ 1
Input
31 1 2008
31 7 2008
Output
182
Giải thích
Năm ~2008~ là năm nhuận. Khoảng cách cần tìm là ~29 + 31 + 30 + 31 + 30 + 31 = 182~ ngày.
Ví dụ 2
Input
26 12 2008
01 10 9002
Output
2554419
Giải thích
Khoảng cách giữa hai mốc thời gian đã cho là ~2\,554\,419~ ngày.
Comments