蓝桥杯-黑色星期五(算法训练)

简介: 蓝桥杯-黑色星期五(算法训练)

题目描述:


有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是“诸事不宜”。请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是13号又是星期五的情形,以帮助你的迷信朋友解决难题。

说明:(1)一年有365天,闰年有366天,所谓闰年,即能被4整除且不能被100整除的年份,或是既能被100整除也能被400整除的年份;(2)已知1998年1月1日是星期四,用户输入的年份肯定大于或等于1998年。  


输入:


输入只有一行,即某个特定的年份(大于或等于1998年)。  


输出:


输出只有一行,即在这一年中,出现了多少次既是13号又是星期五的情形。  


样例输入:


1998


样例输出:


3


解题思路:


根据题目,我们已知天数是13号,所以只需要确定年份和月份即可,运用基姆拉尔森公式(不需要判断是否为闰年)


x=(13+2*m+3*(m+1)/5+year+year/4-year/100+year/400)%7;

如果月份是1或者2,此时月份m需要加上12,按照上一年的13月和14月来算,同时年份-1,最后对7求余,题目说的是星期五,所以只需要让余数等于4就可以了,具体的来看代码吧!!!


程序代码:


#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
/*int LeapYear(int year)
{
  if((year%4==0&&year%100!=0)||year%400==0)
    return 1;
  return 0;
}*/
int main()
{
  int n,sum=0,m,year,x;
  cin>>n;
  year=n;
  for(int i=1;i<=12;i++)
  {
    m=i;
    if(m==1||m==2)
    {
      m+=12;
      year--;
      x=(13+2*m+3*(m+1)/5+year+year/4-year/100+year/400)%7;
      if(x==4)
        sum++;
    }
    else
    {
      x=(13+2*m+3*(m+1)/5+year+year/4-year/100+year/400)%7;
      if(x==4)
        sum++;
    }
    year=n;
  }
  cout<<sum<<endl;
  return 0;
}
目录
打赏
0
0
0
0
85
分享
相关文章
|
4月前
|
蓝桥杯练习题(一):Python组之入门训练题
这篇文章是关于蓝桥杯Python组的入门训练题,包括Fibonacci数列、圆的面积、序列求和和A+B问题的具体代码实现和样例输出。
177 0
【潜意识Java】深度解析黑马项目《苍穹外卖》与蓝桥杯算法的结合问题
本文探讨了如何将算法学习与实际项目相结合,以提升编程竞赛中的解题能力。通过《苍穹外卖》项目,介绍了订单配送路径规划(基于动态规划解决旅行商问题)和商品推荐系统(基于贪心算法)。这些实例不仅展示了算法在实际业务中的应用,还帮助读者更好地准备蓝桥杯等编程竞赛。结合具体代码实现和解析,文章详细说明了如何运用算法优化项目功能,提高解决问题的能力。
68 6
【潜意识Java】蓝桥杯算法有关的动态规划求解背包问题
本文介绍了经典的0/1背包问题及其动态规划解法。
53 5
第十五届蓝桥杯pb组国赛E题[马与象] (15分)BFS算法 详解
第十五届蓝桥杯pb组国赛E题[马与象] (15分)BFS算法 详解
107 3
蓝桥杯练习题(三):Python组之算法训练提高综合五十题
蓝桥杯Python编程练习题的集合,涵盖了从基础到提高的多个算法题目及其解答。
174 3
蓝桥杯练习题(三):Python组之算法训练提高综合五十题
阿里云MaxCompute-XGBoost on Spark 极限梯度提升算法的分布式训练与模型持久化oss的实现与代码浅析
本文介绍了XGBoost在MaxCompute+OSS架构下模型持久化遇到的问题及其解决方案。首先简要介绍了XGBoost的特点和应用场景,随后详细描述了客户在将XGBoost on Spark任务从HDFS迁移到OSS时遇到的异常情况。通过分析异常堆栈和源代码,发现使用的`nativeBooster.saveModel`方法不支持OSS路径,而使用`write.overwrite().save`方法则能成功保存模型。最后提供了完整的Scala代码示例、Maven配置和提交命令,帮助用户顺利迁移模型存储路径。
【贪心算法】算法训练 ALGO-1003 礼物(C/C++)
【贪心算法】算法训练 ALGO-1003 礼物(C/C++)
【贪心算法】算法训练 ALGO-1003 礼物(C/C++)

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等