新BOJ 87. 日期
生活随笔
收集整理的這篇文章主要介紹了
新BOJ 87. 日期
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
87. 日期
時間限制1000 ms???? 內存限制 65536 KB????題目描述
請你計算出第X?年Y?月Z?日是第X年的第幾天。其中,1月1日是第一天,1月2日是第二天,以此類推。
計算時請注意閏年的影響。對于非整百年,年數能整除4是閏年,否則不是閏年;對于整百年,年數能整除400是閏年,否則不是閏年。如1900年和1901年不是閏年,而2000年和2004年是閏年。
輸入格式
第一行有一個整數T?(T≤100)?,表示一共有T組數據需要你處理。
接下來一共有T行,每行是一個如下格式的字符串:X?:Y?:Z?,表示你需要計算第X?年Y?月Z?日是第X?年的第幾天。其中X?是一個大于0,小于2100的整數。保證字符串的格式都是合法的,字符串所表示的日期也都是存在的。
輸出格式
對于每組數據,你需要輸出一個整數,表示所求得的結果。
輸入樣例
2 2013:4:12 112:4:12輸出樣例
102 103?
判斷一下是否是閏年,再把每個月的日期加起來
?
#include<stdio.h> int main(){int t,y,m,d,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};for(scanf("%d",&t);t--;){scanf("%d:%d:%d",&y,&m,&d);int i,j,ans=0;for(i=0;i<m-1;i++){ans+=a[i];if(i==1&&(y%400==0||(y%100!=0&&y%4==0)))ans++;}printf("%d\n",ans+d);}return 0; }
?
?
?
總結
以上是生活随笔為你收集整理的新BOJ 87. 日期的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 北邮OJ 85. Three Point
- 下一篇: 新BOJ 88. 最值问题