记录编号 |
461653 |
评测结果 |
AAAAAAAAAA |
题目名称 |
[NOIP 2016PJ]回文日期 |
最终得分 |
100 |
用户昵称 |
软软糖 |
是否通过 |
通过 |
代码语言 |
C++ |
运行时间 |
0.005 s |
提交时间 |
2017-10-20 10:51:29 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include <bits/stdc++.h>
using namespace std;
int date1,date2,md1,md2,year1,year2,ans=0;
int find(int year,int mon,int day)
{
if(mon==1||mon==3||mon==5||mon==7||mon==8||mon==10||mon==12)
if(day<=31)
return 1;
if(mon==4||mon==6||mon==9||mon==11)
if(day<=30)
return 1;
if(mon==2)
{
if(year%4==0&&year%100!=0)
if(day<=29)
return 1;
if(year%400)
if(day<=29)
return 1;
else
if(day<=28)
return 1;
}
return 0;
}
int main()
{
freopen("datea.in","r",stdin);
freopen("datea.out","w",stdout);
cin>>date1;
cin>>date2;
year1=date1/10000; md1=date1%10000;
year2=date2/10000; md2=date2%10000;
ans=0;
for (int i=year1; i<=year2; i++)
{
int a1=i%10;
int a2=(i%100)/10;
int m=a1*10+a2;
int a3=(i%1000)/100;
int a4=i/1000;
int d=a3*10+a4; //d:?
int md=m*100+d;
if (find(i,m,d))
{
int date=i*10000+md;
if (date1<=date&&date<=date2) ans++;
}
}
cout<<ans;
return 0;
}