添加链接描述
注意:先计算天数再÷7求周数
#include<iostream>
using namespace std;
int main()
{
int y, m, d;
while (cin >> y >> m >> d)
{
if (y == 1999 && m == 1 && d == 1) {
cout << 0 << endl; continue;
}
int sum = 0;
for (int i = 1999; i <= y - 1; i++)
if (i % 400 == 0 || i % 4 == 0 && i % 100 != 0)
sum += 366;
else sum += 365;
while (--m)
{
switch (m)
{
case 1:case 3: case 5:case 7:case 8:case 10:case 12:sum += 31; break;
case 4:case 6:case 9:case 11:sum += 30; break;
case 2:
{
if (y % 400 == 0 || y % 100 != 0 && y % 4 == 0)sum += 29;
else sum += 28;
break;
}
}
}
sum += d;
int ans = sum / 7;
if (sum % 7 != 0)cout << ans + 1 << endl;
else cout << ans << endl;
}
}