QJ498 - Ngày palindrome
Xem dưới dạng PDFTrong cuộc sống hằng ngày, ba yếu tố năm, tháng, ngày có thể biểu diễn một ngày xác định duy nhất.
An quen dùng $8$ chữ số để biểu diễn một ngày, trong đó $4$ chữ số đầu là năm, $2$ chữ số tiếp theo là tháng, $2$ chữ số cuối là ngày. Rõ ràng: mỗi ngày chỉ có một cách biểu diễn, và hai ngày khác nhau thì cách biểu diễn không thể giống nhau.
An cho rằng một ngày là palindrome khi và chỉ khi số gồm $8$ chữ số biểu diễn ngày đó là palindrome. Bây giờ, An muốn biết: giữa hai ngày mà cậu chỉ định (tính cả hai ngày đó), có bao nhiêu ngày thực sự tồn tại là palindrome.
Một số $8$ chữ số là palindrome khi và chỉ khi với mọi $i$ ($1 \le i \le 8$), chữ số thứ $i$ tính từ trái sang bằng chữ số thứ $9-i$ (tức chữ số thứ $i$ tính từ phải sang).
Ví dụ:
- Ngày 19 tháng 11 năm 2016, biểu diễn bằng $8$ chữ số là $20161119$, không phải palindrome.
- Ngày 2 tháng 1 năm 2010, biểu diễn bằng $8$ chữ số là $20100102$, là palindrome.
- Ngày 2 tháng 10 năm 2010, biểu diễn bằng $8$ chữ số là $20101002$, không phải palindrome.
Mỗi năm có $12$ tháng:
Trong đó, 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; riêng tháng $2$ có $29$ ngày vào năm nhuận và $28$ ngày vào năm thường.
Một năm là năm nhuận khi và chỉ khi nó thỏa mãn một trong hai điều kiện sau:
- Năm đó chia hết cho $4$ nhưng không chia hết cho $100$;
- Năm đó chia hết cho $400$.
Ví dụ:
- Các năm sau đều là năm nhuận: $2000, 2012, 2016$.
- Các năm sau là năm thường: $1900, 2011, 2014$.
Dữ liệu vào
Hai dòng, mỗi dòng gồm một số có $8$ chữ số.
Dòng thứ nhất là ngày bắt đầu mà An chỉ định.
Dòng thứ hai là ngày kết thúc mà An chỉ định.
Bảo đảm $\mathit{date}_1$ và $\mathit{date}_2$ đều là các ngày thực sự tồn tại, phần năm luôn gồm $4$ chữ số và chữ số đầu tiên khác $0$.
Bảo đảm $\mathit{date}_1$ không muộn hơn $\mathit{date}_2$.
Dữ liệu ra
Một số nguyên, cho biết giữa $\mathit{date}_1$ và $\mathit{date}_2$ có bao nhiêu ngày là palindrome.
Ví dụ 1
Input
20110101
20111231
Output
1
Ví dụ 2
Input
20000101
20101231
Output
2
Ghi chú
Giải thích ví dụ
Với ví dụ 1, ngày thỏa mãn điều kiện là $20111102$.
Với ví dụ 2, các ngày thỏa mãn điều kiện là $20011002$ và $20100102$.
Subtask
Với $60 \%$ số dữ liệu, $\mathit{date}_1 = \mathit{date}_2$.
Nhận xét