1505 - 今年的第几天?
输入年、月、日,计算该天是本年的第几天。
Input
包括三个整数年(1<=Y<=3000)、月(1<=M<=12)、日(1<=D<=31)。
Output
输入可能有多组测试数据,对于每一组测试数据,输出一个整数,代表Input中的年、月、日对应本年的第几天。
Examples
Input
2012 12 21 2013 1 5
Output
356 5
Solution C
#include<stdio.h> int main() { int Y,M,D,m[13][2]={0,0, 31,31, 28,29, 31,31, 30,30, 31,31, 30,30, 31,31, 31,31, 30,30, 31,31, 30,30, 31,31}; int i,k,d; while(scanf("%d%d%d",&Y,&M,&D)!=EOF) { k=0; if((Y%4==0&&Y%100!=0)||(Y%400==0)) k=1; for(d=0,i=1;i<M;i++) d+=m[i][k]; d+=D; printf("%d\n",d); } return 0; }
Solution C++
#include<stdio.h> int main() { int Y,M,D,m[13][2]={0,0, 31,31, 28,29, 31,31, 30,30, 31,31, 30,30, 31,31, 31,31, 30,30, 31,31, 30,30, 31,31}; int i,k,d; while(scanf("%d%d%d",&Y,&M,&D)!=EOF) { k=0; if((Y%4==0&&Y%100!=0)||(Y%400==0)) k=1; for(d=0,i=1;i<M;i++) d+=m[i][k]; d+=D; printf("%d\n",d); } return 0; }