不知道是不是超时,但超时不应该爆TLE吗
#include<bits/stdc++.h>
using namespace std;
int date1,date2,sum;
bool isy(int y){
if(y%4==0&&y%100!=0) return true;
if(y%400==0) return true;
return false;
}
int ism(int m,int y){
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12) return 31;
if(m==4||m==6||m==9||m==11) return 30;
if(m==2&&isy(y)==true) return 29;
if(m==2&&isy(y)==false) return 28;
}
int datego(int x){
int y=x/10000,m=x%10000/100,d=x%100;
if(ism(m,y)>=d) d++;
else {
m++;
d=1;
}
if(y==12) m=1,y++;
return y*10000+m*100+d;
}
bool ishw(int x){
int n=0,m=0;
n=x;
while(n!=0){
m*=10;
m+=n%10;
n/=10;
}
if(x==m) return true;
else return false;
}
int main(){
cin>>date1>>date2;
int i=date1;
while(i<=date2){
if(ishw(i)==true) sum++;
i=datego(i);
}
cout<<sum<<endl;
return 0;
}