首页 > 代码库 > 每日一九度之 题目1070:今年的第几天?
每日一九度之 题目1070:今年的第几天?
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:6251
解决:3461
- 题目描述:
输入年、月、日,计算该天是本年的第几天。
- 输入:
包括三个整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。
- 输出:
- 输入可能有多组测试数据,对于每一组测试数据,输出一个整数,代表Input中的年、月、日对应本年的第几天。
- 样例输入:
1990 9 202000 5 1
- 样例输出:
263122
记住闰年的规律:
4年一闰,一百年不闰,四百年又闰。
//Asimple#include <iostream>#include <algorithm>#include <cstring>#include <cstdio>#include <vector>#include <cctype>#include <cstdlib>#include <stack>#include <cmath>#include <set>#include <map>#include <string>#include <queue>#include <limits.h>#define INF 0x7fffffffusing namespace std;const int maxn = 105;typedef long long ll;int y, m, d;int a[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};int main(){ while( ~scanf("%d %d %d",&y, &m, &d) ){ int day = 0; for(int i=0; i<m; i++){ day += a[i]; if( i == 2 && ((y % 4 == 0 && y % 100!=0) || y % 400 == 0)) day += 1; } day += d; printf("%d\n",day); } return 0;}
每日一九度之 题目1070:今年的第几天?
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。