首页 > 代码库 > 九度OJ 1070 今年的第几天?(模拟)
九度OJ 1070 今年的第几天?(模拟)
时间限制:1 秒
内存限制:32 兆
特殊判题:否
提交:3491
解决:1936
- 题目描述:
输入年、月、日,计算该天是本年的第几天。
- 输入:
包括三个整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。
- 输出:
- 输入可能有多组测试数据,对于每一组测试数据,输出一个整数,代表Input中的年、月、日对应本年的第几天。
- 样例输入:
1990 9 20 2000 5 1
- 样例输出:
263 122
#include<stdio.h> int month[]={0,31,28,31,30,31,30,31,31,30,31,30,31}; int isLeapYear(int Y){ if(Y%4==0&&Y%100!=0||Y%400==0) return 1; else return 0; } int Y,M,D; void solve() { int sum=0; for(int i=1;i<=M-1;++i){ sum+=month[i]; } sum+=D; printf("%d\n",sum); } int main(int argc, char *argv[]) { // freopen("1070.in", "r", stdin); while(~scanf("%d%d%d",&Y,&M,&D)) { if(isLeapYear(Y)){ month[2]+=1; solve(); month[2]-=1; } else solve(); } return 0; } /************************************************************** Problem: 1070 User: kirchhoff Language: C Result: Accepted Time:10 ms Memory:912 kb ****************************************************************/
九度OJ 1070 今年的第几天?(模拟)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。