备战蓝桥杯Day37 - 真题 - 特殊日期

一、题目描述

 思路:

1、统计2000年到2000000年的日期,肯定是需要遍历

2、闰年的2月是29天,非闰年的2月是28天。我们需要判断这一年是否是闰年。

        1、3、5、7、8、10、12月是31天,4、6、9、11月是30天。

3、年份yy是月份mm的倍数也是dd的倍数:说明年份yy对月份mm和dd要同时整除

4、因为是一道填空题,我们可以不考虑算法的时间和空间复杂度的限制,使用暴力直接解决。

代码

import os
import sys

# 请在此输入您的代码
def isLeap(x):  # 判断是否为闰年
    if (x % 4 == 0 and x % 100 != 0) or x % 400 == 0:
        return True
    return False

def numAdd(x):  # 计算年份个数位的数字和
    sums = 0
    while x:
        sums += x % 10
        x //= 10
    return sums


start, end = 1900, 9999
ans = 0
day = [1, -2, 1, 0, 1, 0, 1, 1, 0, 1, 0, 1]  # 每个月天数和30天的差值
data = []
hstable = dict()  # key:月份1~12,value:每个月份月份数位和+日的数位和的区间,如1月份为(2, 32)
for j in range(1,32):  # 计算日数位和
    data.append(numAdd(j))
for i in range(1, 13):  # 初始化哈希表
    t = numAdd(i)  # 月数位和
    for j in range(day[i - 1] + 30):  # 遍历一个月的每一天将月数位和加上日数位和
        addt = t + data[j]
        if addt not in hstable:
            hstable[addt] = 1
        else:
            hstable[addt] += 1  # 哈希表中对应的天数加一

for i in range(start, end + 1):  # 遍历每一年
    yearsum = numAdd(i)  # 计算年的数位和
    if yearsum in hstable:  # 若年的数位和在哈希表中存在则答案加上对应的天数
        ans += hstable[yearsum]
    if isLeap(i) and yearsum == 13:  # 闰年2月份多一天,位数和为13
        ans += 1

print(ans)

本来想自己尝试写一下,但是结果不对,还是先学习一下大佬的吧。因为清明节放假,根本不想学习,玩完之后有戒断反应,非常失落现在。唉,还有六天就到省赛了,咱们就是说顺其自然吧,我已经不抱希望获奖了哈哈,自己的能力还是不够,还是要多学习啊。学习的过程比结果更重要!(好吧只能这样安慰自己了)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/524639.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【大数据】常见问题解决1

目录 一、解决虚拟机ping www.baidu.com 不通问题 二、解决HBase集群中的Hmaster节点刚启动就消息 三、 Hadoop3.x和Hadoop2.x的区别 一、解决虚拟机ping www.baidu.com 不通问题 1)首先保证主机连上网络 2)sudo vim /etc/resolv.conf 3)…

SpringBoot3整合RabbitMQ之三_工作队列模型案例

SpringBoot3整合RabbitMQ之三_工作队列模型案例 文章目录 SpringBoot3整合RabbitMQ之三_工作队列模型案例2. 工作队列模型1. 消息发布者1. 创建工作队列的配置类2. 发布消费Controller 2. 消息消费者One3. 消息消费者Two4. 消息消费者Three5. 输出结果 2. 工作队列模型 1. 消息…

【学习笔记】3、逻辑门电路

3.1 MOS逻辑门电路 按照器件结构的不同形式,分为NMOS、PMOS、CMOS三种逻辑门电路。 3.1.1 CMOS CMOS电路成为主导地位的逻辑器件。工作速度:赶上甚至超过TTL电路。(早期CMOS速度慢,后来工艺提升速度变快)功耗和抗干…

【MacBook系统homebrew镜像记录】

安装 使用Homebrew 国内源安装脚本,贼方便: /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"切换至清华大学镜像源: 命令合并: 分别切换了 brew.git、 homebrew-core.git、 homebrew-…

系统架构评估_2.SAAM方法

SAAM(Scenarios-based Architecture Analysis Method)是卡耐基梅隆大学软件工程研究所(SEI at CMU)的Kazman等人于1983年提出的一种非功能质量属性的架构分析方法,是最早形成文档并得到广泛使用的软件架构分析方法。最…

SiteSpace 使用方法笔记

目录 介绍下载及安装准备工作知网 CNKI 文献分析数据准备数据转换新建项目图形处理 介绍 CiteSpace 是一个用于可视化和分析科学文献的工具。它可以从科学文献库中提取关键词、作者、机构和引用关系等信息,并将其可视化为图形网络。 一些使用案例 下载及安装 下载…

牛客论坛项目中使用到Redis的地方总结

实体分为很多类,实体的确定要通过实体类型和实体id两个属性同时确定。牛客论坛中使用到了3类实体: 1 登录 使用到的Redis命令: set key value // 设置指定key的值为value get key // 获取指定key的值1.1 存储/获取验证码 验证码文本&…

Django之静态文件及模板语法(上)

Python学习之路系列文章目录 python面向对象之警察与匪徒火拼场景模拟python面向对像之第二次笔记Django环境搭建及测试第1个Django应用及Django的请求处理Django之静态文件及模板语法(上) 静态文件及模板语法 Python学习之路系列文章目录一、静态文件1.…

xss基础

第一关&#xff1a; html部分标签可以解析js <script>alert (1)</script> 第二关&#xff1a; 可以看到value用双引号闭合了&#xff0c;使用上一关的payload没用&#xff0c;尝试一下闭合这个input 所以使用双引号和>闭合后再加入上一关的payload 11"…

【Redis 知识储备】垂直分库架构 -- 分布系统的演进(6)

垂直分库架构 简介出现原因架构工作原理技术案例架构优缺点 简介 数据库的数据被拆分, 数据库分布式存储, 分布式处理, 分布式查询, 也可以理解为分布式数据库框架 出现原因 单机的写库会逐渐会达到性能瓶颈, 需要拆分数据库, 数据表的数据量太大, 处理压力太大, 需要进行分…

python爬虫学习第十六天--------URLError和HTTPError、cookie登录、Handler处理器

&#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; &#x1f388;&#x1f388;所属专栏&#xff1a;python爬虫学习&#x1f388;&#x1f388; ✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天…

性能分析-docker知识

docker的相关概念 docker是一个做系统虚拟化的软件&#xff0c;跟vmware类似&#xff0c;虚拟出来的也是操作系统。我们现在在企业中&#xff0c; 使用docker虚拟出来的系统&#xff0c;大多都是linux系统。 docker镜像image&#xff1a;就是虚拟一个docker容器需要的操作系统…

阿里云乱扣费故障,技术堪忧

2024年4月3日&#xff0c;距离2023年11月的故障没有多久&#xff0c;阿里云又出现乱扣费故障&#xff0c;导致账号欠费3000多&#xff0c;oss&#xff0c;块存储&#xff0c;cdn等所有后付费服务停止工作&#xff0c;不知道这个故障能算什么级别的。 凌晨1点多&#xff0c;收到…

Android 13 aosp 预置三方应用apk

前提条件 编译启动 launch 选择了 sdk_pc_x86_64-userdebug 该版本 添加一个三方预置应用 Android_source/vendor/third_party/MdmLib/MdmLib.apk 配置三方应用对应的Android.mk Android_source/vendor/third_party/MdmLib/Android.mk LOCAL_PATH : $(call my-dir)include $(CL…

【vue-qrcode + html2canvas】前端二维码生成与下载

一、前言 其实一开始搜的时候&#xff0c;很多还都是推荐的 vue-qrcode&#xff0c;于是就先用这个&#xff0c;但是发现想要在二维码中间放一个自定义的image的时候&#xff0c;这个库有点麻烦&#xff0c;需要自己将 image 图片盖在二维码上面&#xff08;官方教程也是如此&…

使用pytorch构建有监督的条件GAN(conditional GAN)网络模型

本文为此系列的第四篇conditional GAN&#xff0c;上一篇为WGAN-GP。文中在无监督的基础上重点讲解作为有监督对比无监督的差异&#xff0c;若有不懂的无监督知识点可以看本系列第一篇。 原理 有条件与无条件 如图投进硬币随机得到一个乒乓球的例子可以看成是一个无监督的GAN&…

SDWAN专线保护企业数据传输安全

企业数字化进程的加速和网络环境的复杂化&#xff0c;数据传输安全已经成为企业网络管理的头等大事。SD-WAN&#xff08;软件定义广域网&#xff09;作为一种新兴的网络技术&#xff0c;不仅能够提升网络性能和效率&#xff0c;还能够有效地保护企业数据传输的安全性。以下是SD…

卫星遥感监测森林植被健康度

随着地球环境的日益恶化&#xff0c;森林作为地球上最重要的生态系统之一&#xff0c;其变化对全球气候、生态环境和人类社会经济发展产生深远影响。因此&#xff0c;及时、准确地监测森林变化对于保护生态环境、维护生态平衡、推进可持续发展具有重要意义。卫星遥感影像技术因…

1.12 数组列表

序列&#xff1a;存储一堆数据的集合/容器 列表、字符串、元组、集合、字典 序列通用操作 索引/角标 >>> arr[0] 1 >>> arr[8] 9 >>> arr[-1] # 倒数第1个 9 >>> arr[-2] # 倒数第2个 8 >>> arr[-100] Traceback (most rec…

目标检测——RCNN系列学习(二)Faster RCNN

接着上一篇文章&#xff1a;目标检测——RCNN系列学习(一&#xff09;-CSDN博客 主要内容包含&#xff1a;Faster RCNN 废话不多说。 Faster RCNN [1506.01497] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks (arxiv.org)https://arxiv.…