#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <math.h>
#include <string>
#include <string.h>
#include <vector>
#include <queue>
#include <stack>
#include <sstream>
#include <climits>
#include <cstring>
using namespace std;
//1096
int month[][14]={{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
int isRun(int n){
return (n%400==0 || (n%4==0&&n%100!=0))?1:0;
}
int cnt(int y,int m,int d){
int s=0;
for(int i=1;i<y;i++)
if(isRun(i)==1)
s+=366;
else
s+=365;
int f=isRun(y);
for(int i=1;i<m;i++)
s+=month[f][i];
s+=d;
return s;
}
int main(){
int y1,y2,m1,m2,d1,d2;
//freopen("input.txt","r",stdin);
while(scanf("%04d%02d%02d",&y1,&m1,&d1)!=EOF){
scanf("%04d%02d%02d",&y2,&m2,&d2);
int ans=cnt(y1,m1,d1)-cnt(y2,m2,d2);
if(ans<0) ans=-ans;
printf("%d\n",ans+1);
}
return 0;
}
/**************************************************************
Problem: 1096
User: cust123
Language: C++
Result: Accepted
Time:0 ms
Memory:1520 kb
****************************************************************/
题目1096:日期差值
最新推荐文章于 2021-06-05 11:19:28 发布