博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
蓝桥杯 算法提高 日期计算
阅读量:5877 次
发布时间:2019-06-19

本文共 992 字,大约阅读时间需要 3 分钟。

  算法提高 日期计算 时间限制:1.0s   内存限制:256.0MB     问题描述  已知2011年11月11日是星期五,问YYYY年MM月DD日是星期几?注意考虑闰年的情况。尤其是逢百年不闰,逢400年闰的情况。输入格式  输入只有一行  YYYY MM DD输出格式  输出只有一行  W数据规模和约定  1599 <= YYYY <= 2999  1 <= MM <= 12  1 <= DD <= 31,且确保测试样例中YYYY年MM月DD日是一个合理日期  1 <= W <= 7,分别代表周一到周日样例输入2011 11 11样例输出5

c++:

#include
#include
#include
using namespace std;int a[2][13]={
{0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31},{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}};bool isRun(int year){//判断是否为闰年 if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0) return true; return false;}int calDay(int year){ int index = 0; if(!isRun(year)) index = 1; int tot = 0; for(int i=1; i<=12; ++i) tot += a[index][i]; return tot;}int Day(int y, int m, int d){//计算从0年0月0日到y年m月d日的时间天数 int ans = 0; for(int i=1; i
>y>>m>>d; int diff = Day(y, m, d) - Day(2011, 11, 11);//已知2011-11-11这一天是星期5 if(diff > 0) cout<<(4+diff%7)%7+1<

转载地址:http://xnuix.baihongyu.com/

你可能感兴趣的文章
Mind_Manager_2
查看>>
手动升级 Confluence - 规划你的升级
查看>>
汽车常识全面介绍 - 悬挂系统
查看>>
电子政务方向:We7.Cloud政府云门户
查看>>
虚拟机Centos7连接Internet
查看>>
ansible 基本操作(初试)
查看>>
更改tomcat的根目录路径
查看>>
51nod 1292 字符串中的最大值V2(后缀自动机)
查看>>
加快ALTER TABLE 操作速度
查看>>
学习笔记之软考数据库系统工程师教程(第一版)
查看>>
基本网络概念
查看>>
将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1 RC 1
查看>>
js提交图片转换为base64
查看>>
学习CodeIgniter框架之旅(二)继承自定义类
查看>>
Y2161 Hibernate第三次考试 2016年8月18日 试卷分析
查看>>
Angular CLI 使用教程指南参考
查看>>
PHP 程序员的技术成长规划
查看>>
用于守护进程的出错处理函数
查看>>
memcached 分布式聚类算法
查看>>
禁止body滚动允许div滚动防微信露底
查看>>