问题描述
有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是“诸事不宜”。请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是13号又是星期五的情形,以帮助你的迷信朋友解决难题。
说明:(1)一年有365天,闰年有366天,所谓闰年,即能被4整除且不能被100整除的年份,或是既能被100整除也能被400整除的年份;(2)已知1998年1月1日是星期四,用户输入的年份肯定大于或等于1998年。
输入格式:输入只有一行,即某个特定的年份(大于或等于1998年)。
输出格式:输出只有一行,即在这一年中,出现了多少次既是13号又是星期五的情形。
输入输出样例

样例输入
1998
样例输出
3

分析:1.根据基姆拉尔森计算公式枚举即可
2.W = (d+2*m+3*(m+1)/5+y+y/4-y/100+y/400) % 7
3.注意:在公式中有个与其他公式不同的地方:把一月和二月看成是上一年的十三月和十四月例:如果是2018-1-1则换算成:2017-13-1来代入公式计算~

#include <iostream>
using namespace std;
int ans = 0;
void f(int y, int m, int d) {if (m == 1 || m == 2) {y--;m += 12;}if ((d + 2 * m + 3 * (m + 1) / 5 + y + y / 4 - y / 100 + y / 400) % 7 == 4 && d == 13) ans++;
}
int main() {int n;int m31[] = {1, 3, 5, 7, 8, 10, 12};int m30[] = {4, 6, 9, 11};int m2;cin >> n;if (n % 4 == 0 && n % 100 != 0 || n % 400 == 0) {m2 = 29;} else {m2 = 28;}for (int i = 0; i < 7; i++)for (int j = 1; j <= 31; j++)f(n, m31[i], j);for (int i = 0; i < 4; i++)for (int j = 1; j <= 30; j++)f(n, m30[i], j);for (int j = 1; j <= m2; j++)f(n, 2, j);cout << ans << endl;return 0;
}

蓝桥杯 ALGO-105 算法训练 黑色星期五相关推荐

  1. 蓝桥杯:试题 算法训练 Remember the A La Mode

    蓝桥杯:试题 算法训练 Remember the A La Mode 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Hugh Samston经营着一个为今年的ICPC世界总决赛的参 ...

  2. 矩阵乘法 算法训练 试题_蓝桥杯习题集_ 算法训练 矩阵乘法

    原文: 算法训练 矩阵乘法 时间限制:1.0s   内存限制:512.0MB 问题描述 输入两个矩阵,分别是m*s,s*n大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s, ...

  3. 蓝桥杯练习系统算法训练习题加答案java版本

    附上百度文库的链接:http://wenku.baidu.com/view/afb78d36b42acfc789eb172ded630b1c59ee9bf7 转载于:https://www.cnblo ...

  4. java蓝桥杯的题_Java蓝桥杯试题集——算法训练ALGO-116——最大的算式

    题目要求 解题思路 动态规划,今天才弄明白QAQ,借鉴了这位大佬的博客,曹磊的博客 写的很好!但是我觉得我的循环方式更容易理解嘿嘿嘿~ 首先建立如下图的数组,行数代表前几位数,列数代表有几个乘号.将第 ...

  5. 蓝桥杯练习系统—算法训练 s01串

    第一部分:题目 问题描述 s01串初始为"0" 按以下方式变换 0变1,1变01 输入格式 1个整数(0~19) 输出格式 n次变换后s01串 样例输入 3 样例输出 101 数据 ...

  6. 蓝桥杯:试题 算法训练 采油区域 矩阵前缀和+动态规划+分治+枚举

    资源限制 时间限制:2.0s 内存限制:512.0MB 采油区域 Siruseri政府决定将石油资源丰富的Navalur省的土地拍卖给私人承包商以建立油井.被拍卖的整块土地为一个矩形区域,被划分为M× ...

  7. 【算法】【蓝桥杯】试题 算法训练 黑心药商 ALGO-1002

    题目 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 JiaoShou消灭了百变怪,为爱琳世界赢得了和平,但他突然发现自己没有升级,这就意味着必须去喝药补血.爱琳世界的NPC卖的药已 ...

  8. 蓝桥杯 算法训练 黑色星期五

    算法训练 黑色星期五   时间限制:1.0s   内存限制:512.0MB      问题描述 有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是" ...

  9. 蓝桥杯 Java算法训练 黑色星期五

    谢谢大家的支持,您的一键三连是 罡罡同学前进的最大动力! 一键三连 一键三连 一键三连 一键三连 一键三连 一键三连 Java算法训练 黑色星期五 有些西方人比较迷信,如果某个月的13号正好是星期五, ...

  10. 蓝桥杯国赛五一训练赛(1)

    蓝桥杯国赛五一训练赛(1)(链接) 问题 A: 费解的开关 你玩过"拉灯"游戏吗?25盏灯排成一个5x5的方形.每一个灯都有一个开关,游戏者可以改变它的状态.每一步,游戏者可以改变 ...

最新文章

  1. Python的知识点 plt.plot()函数细节
  2. AngularJS安装配置与基础概要整理(上)
  3. 数据恢复knowledge
  4. 任务栏托盘不消失的问题-有启示
  5. 【归并排序】-求逆序数算法
  6. 如何选择合适的Web安全网关?
  7. 《大数据》2021年第5期目次摘要
  8. 对桌面壁纸有要求?壁纸控的你需要看这里
  9. @游戏开发者,ImGUI 能成为 GUI 的未来吗?
  10. 浏览器报错:DNS_PROBE_FINISHED_BAD_CONFIG
  11. Django:学习笔记(9)——用户身份认证
  12. 一次 MySQL 索引面试,被面试官怼的体无完肤!
  13. 【C++】深度探索C++对象模型读书笔记--关于对象(Object Lessons)
  14. archlinux mysql_在Arch Linux中安装MySQL
  15. 数学主题分类 - 中文(上)
  16. 圆柱体的表面积,三位数反转,交换变量
  17. Linux查看目录大小文件大小内存大小硬盘大小
  18. Scrapy设置headers、cookies三种方法
  19. python列表转字典
  20. PC_十进制转二进制速算+常用的2进制和10进制数/转换关系

热门文章

  1. https://github.com/nostra13/Android-Universal-Image-Loader
  2. 通过JAVA的反射调用类中的公有私有方法
  3. android中The connection to adb is down .. You must restart adb and Eclipse问题的解决
  4. 关于人生的十句经典的话! .
  5. 英特尔贡献基于 Kubernetes 分布式深度学习平台:Nauta
  6. spring-data-redis和jedis版本对应问题
  7. 磨刀不误砍柴工,ORAchk健康检查好帮手
  8. OpenCV中的级联分类器Cascade Classifier(面部识别)
  9. [SAP ABAP开发技术总结]ABAP调优——Open SQL优化
  10. 关于wordpress站点地图代码调试