0
点赞
收藏
分享

微信扫一扫

今年的第几天?(暑假每日一题 42)


输入年、月、日,计算该天是本年的第几天。

注意闰年的 月有

满足下面条件之一的是闰年:

年份是 的整数倍,而且不是 的整数倍;
年份是 的整数倍。
输入格式
输入包含多组测试数据。

每组数据占一行,包含三个整数 ,表示年、月、日。

输出格式
每组数据输出一个整数,占一行,表示输入给定的年、月、日对应本年的第几天。

数据范围



输入最多包含 组测试数据。
保证所有日期都是合法的。

输入样例:

1990 9 20
2000 5 1

输出样例:

263
122

#include<iostream>

using namespace std;

int days[] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int main(){

int y, m, d;
while(cin >> y >> m >> d){
int res = 0;
for(int i = 1; i < m; i++){

res += days[i];
if(i == 2 && (y % 400 == 0 || y % 4 == 0 && y % 100 != 0)) res++;
}

res += d;
cout << res << endl;
}

return 0;
}


举报

相关推荐

0 条评论