记录一下日期问题模板
#include<bits/stdc++.h>
using namespace std;
int months[12]={
31,28,31,30,31,30,31,31,30,31,30,31
};
bool is_leap(int y){//判断某一年是否是闰年
if(y%4==0&&y%100||y%400==0)return 1;
return 0;
}
int get_days(int y,int m){//计算某一年的某月有几天
if(m==2)return months[m-1]+is_leap(y);
return months[m-1];
}
int cal(int y,int m,int d){//计算一个日期距离公元1年1月1日的天数
int res=0;
for(int i=1;i<y;i++){
res+=365+is_leap(i);
}
for(int i=1;i<m;i++)res+=get_days(y,i);
res+=d;
return res;
}
int main(){
int y1,m1,d1,y2,m2,d2;
//格式读入日期
while(~scanf("%04d%02d%02d\n%04d%02d%02d",&y1,&m1,&d1,&y2,&m2,&d2)){
printf("%d\n",abs(cal(y1,m1,d1)-cal(y2,m2,d2))+1);
}
return 0;
}