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

Please read the guidelines before commenting.


There are no comments at the moment.