当前位置: 首页 > news >正文

顺子问题 --- (日期枚举)-- 字符串处理题型

'''
小明特别喜欢顺子。顺子指的就是连续的三个数字:123、456等。
顺子日期指的就是在日期的 yyyymmdd 表示法中,存在任意连续的三位数是一个顺子的日期。

例如20220123就是一个顺子日期,因为它出现了一个顺子: 123; 而20221023则不是一个顺子日期,它一个顺子也没有。小明想知道在整个2022年份中,一共有多少个顺子日期。

'''

一、手算

# 思路:

# 20220101~20221231  由于2022限定 只可能存在 012 123,所以直接在2022年内算这个就好了
# 0120 0121 0122 0123 0124 0125 0126 0127 0128 0129 (012)
# 1012 1123 1231 1230

# 输出14

二、代码

# 代码(适用于多个年份之间)

from datetime import timedelta, date

def has_sequence(date_str):
    # 顺子范围控制在012 ~ 789
    return any(str(i) + str(i + 1) + str(i + 2) in date_str for i in range(0,8))

def count_satisfied_dates():
    count = 0 
    
    start = date(2022,1,1)
    end = date(2022,12,31)
    delta = timedelta(days=1)
    
    while start <= end:
        if has_sequence(start.strftime("%Y%m%d")): # 格式化时间对象为str
            count += 1
        start += delta
    
    return count

print(count_satisfied_dates())

相关文章:

  • C语言基础系列【20】内存管理
  • MySQL语法总结
  • Hadoop管理页看不到任务的问题
  • 【C++初阶】内存管理
  • PyTorch深度学习框架60天进阶学习计划第16天:循环神经网络进阶!
  • 【CSS3】练气篇
  • RabbitMQ消息队列中间件安装部署教程(Windows)-2025最新版详细图文教程(附所需安装包)
  • 常用无功功率算法的C语言实现(二)
  • 算法题(89):单项链表
  • 电容与电感以及其典型的电路
  • 物联网-铁路局“管理工区一张图”实现方案
  • Ubuntu切换lowlatency内核
  • 详解动态规划算法
  • Java并发 vs 并行:本质区别与应用场景全解析(易混概念)
  • HCIA-DHCP
  • 洛谷P4269 [USACO18FEB] Snow Boots G
  • 高效Android MQTT封装工具:简化物联网开发,提升性能与稳定性
  • 【项目日记(十)】瓶颈分析与使用基数树优化
  • Deepseek R1 等大模型本地部署+本地知识库 学习笔记
  • Unity Dots环境配置
  • 做网站做地区好还是全国的好/班级优化大师
  • 亳州市网站建设/谷歌搜索引擎
  • 湖北黄石市黄石市建设材料价格信息在哪个网站查询/淮北网络推广
  • 网站子站怎么做的/香港域名注册网站
  • 那个网站教宝妈做辅食/郑州网络推广报价
  • 庆阳市人大常委会网站建设/seo能干一辈子吗