标题:星期一
整个20世纪(1901年1月1日至2000年12月31日之间),一共有多少个星期一?
(不要告诉我你不知道今天是星期几)
注意:需要提交的只是一个整数,不要填写任何多余的内容或说明文字。
解题:
- 算出者之间的总天数
- 查看电脑日历得出2000年12月31日为周日
- 模板:一 二 三 四 五 六 日
- 每个模板7天,用总天数模7,得到余数为6,所以1901年1月1日为周二
- 总天数/7就是答案
#include <iostream>
using namespace std;
//判断是否为闰年-366
bool runYear(int year){
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0){
return true;
}
return false;
}
//求总天数
int sum_day(){
int sum = 0;
for(int i = 1901;i < 2001;i++){
if(runYear(i)){
sum += 366;
}
else
sum += 365;
}
return sum;
}
int main(){
//打印总天数
cout << sum_day() << endl;
//查看电脑日历看2000-12-31得知是周天
//日期是固定的:一 二 三 四 五 六 日
cout << sum_day() % 7 << endl; //剩余6,对应相应日期的二,即1901年1月1日为二
//答案
cout << sum_day()/7 << endl;
return 0;
}