// 这道题要注意的地方比较多,虽然不难但是真的很难受
#include <iostream>
#include <string>
using namespace std;
// 果然忘记一个很重要的事情
int days[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
bool is_leap(int y)
{
if (y%100 == 0)
{
if (y %400)
return true;
return false;
}
if (y%4==0)
return true;
return false;
}
bool check(int d)
{
int y = d/10000;
int m = (d%10000-d%100)/100;
if (m > 12)
return false;
int ds = d%100;
if (is_leap(y))
{
days[2]++;
bool flag = true;
if (ds > days[m])
flag = false;
days[2]--;
return flag;
}
else
{
if (ds > days[m])
return false;
else
return true;
}
}
void solve()
{
int l,r;cin>>l>>r;
// 8位回文数生成引擎
int i_start = l/10000000;
int res = 0;
for (int i = i_start;i <= 9;i++)
for (int j = 0;j <= 9;j++)
for (int k= 0;k <= 9;k++)
for (int m = 0;m <=9;m++)
{
int t = 10000001*i+1000010*j+100100*k+11000*m;
if (t <= r&&t >= l&&check(t))
res++;
if (t > r)
break;
}
cout<<res;
}
int main() {
ios::sync_with_stdio(false);cin.tie(nullptr);solve();return 0;
}
// 64 位输出请用 printf("%lld")