1360: [蓝桥杯2018初赛]星期一 【简单】 有点意思

在这里插入图片描述
http://oj.ecustacm.cn/problem.php?id=1360

用excel来计算
在蓝桥杯中用excel的小技巧
先计算来日期之间的天数

在这里插入图片描述
再计算1901/1/1是星期几
在这里插入图片描述

36524-5=36519   //确保第一次是星期一
36519/7=5217   //得到答案

代码计算: 其实只需要计算一下有几个7就行了,再看余数是几

#include<stdio.h>
using namespace std;
#define ll long long 
bool check(int x)
{
    
    
	if(x%400==0||x%100!=0&&x%4==0)
	{
    
    
		return 1;
	}
	return 0;
}
int main()
{
    
    
	int ans=0;
	for(int i=1901;i<=2000;i++)
	{
    
    
		if(check(i))
		{
    
    
			ans+=366;
		}
		else ans+=365;
	}
	printf("%d\n",ans/7);
	//cout << sum % 7<<endl;为6,所以没有到星期一(2000.12.31是星期天)
}

猜你喜欢

转载自blog.csdn.net/bettle_king/article/details/115252438