#include<iostream>
using namespace std;
int days[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
int d1,d2;
int res;
bool check(int d){
int year = d / 10000;
int month = d % 10000 / 100;
int day = d % 100;
if(month == 0 || month > 12) return false;
if(month != 2 && (day == 0 || day >days[month])) return false;
if(month == 2){
int leap = year%100 && year%4 == 0 || year%400 == 0;
if(day > 28+leap) return false;
}
return true;
}
int main(){
scanf("%d%d",&d1,&d2);
for(int i=1000;i<10000;i++){
int d=i,x=i;
for(int j=0;j<4;j++){
d=d*10 + x%10;
x /= 10;
}
if(d>=d1 && d<=d2 && check(d)) res++;
}
printf("%d",res);
}
回文日期(c++实现)
最新推荐文章于 2024-03-27 11:25:26 发布