pompeiiking @ 2024-11-29 21:27:32
#include<bits/stdc++.h>
using namespace std;
struct date{
int day;
int month;
int year;
};
int search(string a)
{
for(int i=0;i<8;i++)
{
int j=7-i;
if(a[i]!=a[j]) return 0;
}
return 1;
}
int main()
{
int cntmax=0;
string dayto;
string monthto;
string beg;
string en;
vector<int> q={0,31,28,31,30,31,30,31,31,30,31,30,31};
cin>>beg;
cin>>en;
date fir;
fir.year=stoi(beg.substr(0,4));
fir.month=stoi(beg.substr(4,2));
fir.day=stoi(beg.substr(6,2));
// cout<<fir.day<<endl;
date secn;
secn.year=stoi(en.substr(0,4));
secn.month=stoi(en.substr(4,2));
secn.day=stoi(en.substr(6,2));
// cout<<secn.month<<endl;
string firt;
if(fir.day<10) dayto='0'+to_string(fir.day);
else dayto=to_string(fir.day);
if(fir.month<10) monthto='0'+to_string(fir.month);
else monthto=to_string(fir.month);
firt=to_string(fir.year)+monthto+dayto;
string secnd;
if(secn.day<10) dayto='0'+to_string(secn.day);
else dayto=to_string(fir.day);
if(secn.month<10) monthto='0'+to_string(secn.month);
else monthto=to_string(secn.month);
secnd=to_string(secn.year)+monthto+dayto;
// cout<<firt<<endl<<secnd<<endl;
if(search(firt)==1) cntmax++;
while(firt!=secnd)
{
int cnt=0;
if(fir.year%4==0 && fir.year%100!=0 || fir.year%400==0)
{
q[2]=29;
}
else q[2]=28;
fir.day++;
if(fir.day>q[fir.month])
{
fir.day=1;
fir.month++;
}
if(fir.month>12)
{
fir.month=1;
fir.year++;
}
if(fir.day<10) dayto='0'+to_string(fir.day);
else dayto=to_string(fir.day);
if(fir.month<10) monthto='0'+to_string(fir.month);
else monthto=to_string(fir.month);
firt=to_string(fir.year)+monthto+dayto;
// cout<<firt<<endl;
if(search(firt)==1) cntmax++;
}
cout<<cntmax;
}