洛谷 P1202 [USACO1.1]黑色星期五Friday the Thirteenth

黑色星期五

难度:☆

Code:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
//Mystery_Sky
//
int day[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
int ans[8], N, date;
int main() {
	scanf("%d", &N);
	bool flag_1 = false, flag_2 = false;
	N = 1900 + N - 1;
	for(int i = 1900; i <= N; i++) {
		flag_1 = flag_2 = false;
		if(i % 100 == 0) flag_2 = true;
		if(flag_2 && i % 400 == 0) flag_1 = true;
		else if(!flag_2 && i % 4 == 0) flag_1 = true;
		if(flag_1) day[2] = 29;
		for(int j = 1; j <= 12; j++) {
			for(int k = 1; k <= day[j]; k++) {
				date++;
				date %= 7;
				if(k == 13)
					ans[date]++;				
			}
		}
		day[2] = 28;
	}
	printf("%d %d ", ans[6], ans[0]);
	for(int i = 1; i <= 5; i++) printf("%d ", ans[i]);
	return 0;
}
posted @   Mystery_Sky  阅读(264)  评论(0编辑  收藏  举报
编辑推荐:
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
· dotnet 源代码生成器分析器入门
· ASP.NET Core 模型验证消息的本地化新姿势
· 对象命名为何需要避免'-er'和'-or'后缀
阅读排行:
· “你见过凌晨四点的洛杉矶吗?”--《我们为什么要睡觉》
· 编程神器Trae:当我用上后,才知道自己的创造力被低估了多少
· C# 从零开始使用Layui.Wpf库开发WPF客户端
· C#/.NET/.NET Core技术前沿周刊 | 第 31 期(2025年3.17-3.23)
· 接口重试的7种常用方案!
点击右上角即可分享
微信分享提示