大会员可查看代码,点此开通大会员
#include<bits/stdc++.h>
using namespace std;
void read_date(int& year, int& month, int& day)
{
string str;
cin >> str;
year = stoi(str.substr(0, 4));
month = stoi(str.substr(4, 2));
day = stoi(str.substr(6, 2));
}
bool IsLeapYear(int y)
{
return !(y % 100) && y % 4 || y % 400;
}
int main()
{
int y1, m1, d1;
int y2, m2, d2;
read_date(y1, m1, d1);
read_date(y2, m2, d2);
int dist = 0;
for (int y = y1 + 1; y < y2; y++)
{
if (IsLeapYear(y))
dist += 366;
else
dist += 365;
}
for (int m = m1 + 1; m <= m2; m++)
{
if (m == 1 || m == 3 || m == 5 || m == 7 || m == 8 || m == 10 || m == 12)
dist += 31;
else if (m == 2)
dist += IsLeapYear(y2) ? 29 : 28;
else
dist += 30;
}
dist += (d2 - d1 + 1);
cout << dist;
return 0;
}