蓝桥杯2018-省赛-C/C++-A组2题

喜欢而已 提交于 2020-02-10 20:42:27

题目
标题:星期一

整个20世纪(1901年1月1日至2000年12月31日之间),一共有多少个星期一?
(不要告诉我你不知道今天是星期几)

注意:需要提交的只是一个整数,不要填写任何多余的内容或说明文字。

代码

 1 /*
 2 1901年找不到 
 3 2000年12月31日为周日,反向求 
 4 */ 
 5 #include<iostream>
 6 #define ll long long 
 7 using namespace std;
 8 string week[7]={"Sun.","Sat.","Fri.","Thur.","Wen.","Tues.","Mon."};
 9 bool judge(int y){
10     if((y%400==0)||(y%100!=0&&y%4==0)){
11         return true;
12     }else
13         return false;
14 }
15 int main(){
16     int sta=1901;
17     int end=2001;
18     ll day=0;
19     for(int i=sta;i<end;i++){
20         if(judge(i)){
21             day+=366;
22         }else{
23             day+=365;
24         }
25     }
26     cout<<"day:"<<day<<endl;
27     cout<<week[(day-1)%7]<<endl;
28 } 

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!