AcWing 466. 回文日期 余数,数字倒置
作者:
cyuyu
,
2022-03-08 00:13:15
,
所有人可见
,
阅读 119
代码:
#include<iostream>
using namespace std;
int a[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
bool check(int h){
if(h%4!=0&&h%100!=0){
return false;//平年
}
else
return true;
}
int main(){
int n,m;
cin>>n>>m;
int y;
int t1=n/10000;
int t2=m/10000;
// cout<<t1<<' '<<t2<<endl;
int res=0;
for(int i=t1;i<=t2;i++){
int temp=i*10000+i%10*1000+i%100/10*100+i/100%10*10+i/1000;
// cout<<i%1000*1000<<' '<<i%100/10*100<<' '<<i/100%10*10<<' '<<i/1000;
//cout<<temp<<endl;
if(temp<=m&&temp>=n){
int mm=temp/100%100;
//cout<<mm<<endl;
int dd=temp%100;
//cout<<dd<<endl;
if(mm>=1&&mm<=12&&mm!=2){
if(dd<=a[mm])
res++;
//cout<<'q'<<endl;
}
if(mm==2){
if(check(i))
{
if(dd<=29)
res++;
}
else{
if(dd<=28)
res++;
}
}
}
}
cout<<res<<endl;
return 0;
}