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

回文日期门牌制作

题目:

题目描述

如果将这个日期按 “yyyymmdd” 的格式写成一个 8 位数是 20200202,恰好是一个回文数。我们称这样的日期是回文日期。20200202 并不仅仅是一个回文日期,还是一个 ABABBABA 型的回文日期。

给定一个 8 位数的日期,请你计算该日期之后下一个回文日期和下一个 ABABBABA 型的回文日期各是哪一天。

输入描述

输入包含一个八位整数 �N,表示日期。

对于所有评测用例,10000101≤�≤8999123110000101≤N≤89991231,保证 �N 是一个合法日期的 8 位数表示。

输出描述

输出两行,每行 1 个八位数。第一行表示下一个回文日期,第二行表示下一个 ABABBABA 型的回文日期。

 主要思路

首先,是ABABBABA型的数也是回文数。输入的情况有以下几种:1)该数为ABABBABA型的数,则下一个回文数为ABAB= ABAB+1,且BABA为合法日期;2)该数为回文数但不是ABABBABA型(ABCDDCBA),则下一个回文数为[ABCD+1,1+CDBA],当日期不合格的时,继续++;以此类推

后面发现这样很复杂,每个月份天数还不一样,就去看了别人的答案,发现他们都是用暴力遍历的,虽然很暴力,但是很简单。就从输入的数开始往后推,直到下一个回文数和ABABBABA的数。

 代码:

import os
import sys
import datetime #导入日期库
# 请在此输入您的代码
idate=input()
y=int(idate[:4])#取出输入的年月日
m=int(idate[4:6])
d=int(idate[6:])
dd=datetime.date(y,m,d)#将输入的表示日期的字符串转换成日期
flag=True #回文日期只输出一次
for n in range(9999999):dd=dd+datetime.timedelta(days=1)#日期不断增加1天sd=str(dd).replace('-','')#将日期中的-去掉if sd[:]==sd[::-1]:#判断日期是否是回文if flag:print(int(sd))#输出回文日期flag=False#下次不输出回文日期if sd[0]==sd[2]==sd[5]==sd[7] and sd[1]==sd[3]==sd[4]==sd[6]: #判断是否是ABABBABA类型print(int(sd))#输出break#结束循环

tips:

 datetime详解

题目:

题目描述

请问要制作所有的 1 到 2020 号门牌,总共需要多少个字符 2?

 

主要思路:

第一个想到的还是字典,遍历1-2020所有的数字,将每个数字的出现次数记录为values。

后面看题解,发现str有.count('2')的方法,这样更简单。所需的空间也更小。 

代码:

import os
import sys# 请在此输入您的代码
dict_num = {}
for j in range(1,2021):for i in str(j):if i not in dict_num.keys():dict_num[i] = 1else:dict_num[i] = dict_num[i] + 1
print(dict_num['2'])#另一种方法
'''
a = 0 
for i in range(1,2021):a = a + str(i).count('2')
print(a)
'''

 tips:

对python一些基础的语法还不太熟悉

相关文章:

回文日期门牌制作

题目: 题目描述 如果将这个日期按 “yyyymmdd” 的格式写成一个 8 位数是 20200202,恰好是一个回文数。我们称这样的日期是回文日期。20200202 并不仅仅是一个回文日期,还是一个 ABABBABA 型的回文日期。 给定一个 8 位数的日期,请…...

基于半车悬架的轴距预瞄与轴间预瞄仿真对比

目录 前言 1. 半车悬架模型 2.轴距预瞄(单点预瞄)和轴间预瞄(两点预瞄)原理与仿真分析 2.1轴距预瞄(单点预瞄) 2.1.1预瞄原理 2.2.轴间预瞄(两点预瞄) 2.2.1预瞄原理 2.3仿真分析 3.总结 前言 对于悬架而言,四个车轮实际的输入信息是受到前后延时以及左右相…...

Linux开发 安装JDK8、p4

前面的笔记: Linux 学习笔记1 安装linux详细教程_linux系统 setting_O丶ne丨柒夜的博客-CSDN博客 Linux 学习笔记2 常用命令_O丶ne丨柒夜的博客-CSDN博客 Linux 学习笔记3 权限管理 定时任务 网络配置_O丶ne丨柒夜的博客-CSDN博客 安装配置 安装配置JDK8 Java …...

基于 x86 SoC 的车辆智能驾驶舱和ADAS设计(一)

随着汽车成为软件定义的自动化领域的中心,英特尔致力于提供从汽车到云的可扩展安 全解决方案来加快从高级驾驶员辅助系统(ADAS)到全自动汽车为自动驾驶提供技术支持。 2016 年 3 月,英特尔斥资 153 亿美元收购了以色列高级辅助驾驶系统企业 Mobileye。20…...

类模板函数模板

准备看个项目找实习&#xff0c;边看边学&#xff0c;一看到处都是template 和typename&#xff0c;好几年前学的C都忘记光了&#xff0c;在这里先做个笔记复习一下。template <class T> T abs(T x) {if(x < 0) return -x;return x; } int main() {int x 1;cout <…...

Leetcode DAY 56: 两个字符串的删除操作 and 编辑距离

583. 两个字符串的删除操作 1 、 dp[i][j] 表示 让以word1[i - 1]为结尾的字符串 和 以word2[i - 2]为结尾的字符串 相等需要删除的最少次数 1、dp[i][j] 的 递推需要考虑两种情况&#xff1a; &#xff08;1&#xff09;word1[i - 1] word2[j - 1] 相当于不考虑word1[i]和…...

系统检测维护工具Wsycheck使用(18)

实验目的 &#xff08;1&#xff09;学习Wsycheck的基本功能&#xff1b; &#xff08;2&#xff09;掌握Wsycheck的基本使用方法&#xff1b; 预备知识 windows操作系统的基本知识如&#xff1a;进程、网络、服务和文件等的了解。 Wsycheck是一款强大的系统检测维护工具,进程和…...

111 ok

全部 答对 答错 单选题 1.在与团队一起召开开工会议之后&#xff0c;项目经理分配工作活动&#xff0c;由于与其职能经理分配的任务发生冲突&#xff0c;一位团队成员拒绝开始工作&#xff0c;项目经理首先应该做什么&#xff1f; A请项目发起人帮助与职能经理进行谈判 B签发…...

Python API教程:API入门

什么是API&#xff1f; 一个API&#xff0c;或被称为应用程序接口&#xff0c;是一个服务器为你提供一个接收或发送数据的代码。API通常用来接收数据。 本文就集中焦点在此话题中。 当我们想从一个API中接收数据&#xff0c;我们需要开始请求。请求可以包含整个Web。例如&am…...

SpringMVC学习笔记

文章目录一、SpringMVC简介1、MVC与三层架构1.1 M1.2 V1.3 C1.4 MVC模式的工作流程1.5 三层架构2、什么是SpringMVC3、SpringMVC的特点二、搭建项目框架1、web项目结构2、创建maven工程&#xff0c;配置pom.xmla>添加web模块b> pom.xml中设置打包方式&#xff1a;warc>…...

Linux学习记录01

文章目录1. Linux基础知识2. Linux常用命令2.1 基础知识2.2 ls命令2.3 cd pwd命令2.4 mkdir2.5 touch、cat、more2.6 cp、mv、rm2.7 通配符、root模式2.8 whicih、find命令2.9 grep、mc、| 管道符2.10 echo、反引号、tail、重定向符2.11 vi、vm文本编辑器1. Linux基础知识 Lin…...

VScode 插件【配置】

写这篇博客的原因&#xff1a; vscode 很久以前的插件&#xff0c;忘记是干什么的了记录 vscode 好用的插件 插件介绍&#xff08;正文开始&#xff09; Auto Rename tag 开始/关闭标签内容 同步 Chinese (Simplified) VScode 中文化 CSS Peek 通过 html 代码查找到引用的样式…...

基于 Rainbond 的 Pipeline(流水线)插件

背景 Rainbond 本身具有基于源码构建组件的能力&#xff0c;可以将多种编程语言的代码编译成 Docker 镜像&#xff0c;但是在持续集成的过程中&#xff0c;往往会需要对提交的代码进行静态检查、构建打包以及单元测试。之前由于 Rainbond 并没有 Pipeline 这种可编排的机制&am…...

ASGARD:单细胞导向的药物发现

异质性&#xff0c;或更具体地说&#xff0c;病变组织中的不同的细胞群&#xff0c;是许多复杂疾病治疗失败的主要原因&#xff08;如癌症、阿尔茨海默症、中风和COVID-19等&#xff09;&#xff0c;也是精准医疗成功的主要障碍。近年来&#xff0c;单细胞技术&#xff0c;特别…...

js-DOM03-事件

事件&#xff08;Event&#xff09; - 事件对象 - 当响应函数被调用时&#xff0c;浏览器每次都会将一个事件对象作为实参传递进响应函数中&#xff0c; 这个事件对象中封装了当前事件的相关信息&#xff0c;比如&#xff1a;鼠标的坐标&#xff0c;键盘的按键…...

天梯赛题目练习L1-007--L1-009

1、L1-007 念数字 题目详情 - L1-007 念数字 (pintia.cn) 分数 10 输入一个整数&#xff0c;输出每个数字对应的拼音。当整数为负数时&#xff0c;先输出fu字。十个数字对应的拼音如下&#xff1a; 0: ling 1: yi 2: er 3: san 4: si 5: wu 6: liu 7: qi 8: ba 9: jiu输入格…...

来吧!接受Kotlin 协程--线程池的7个灵魂拷问

前言 之前有分析过协程里的线程池的原理&#xff1a;Kotlin 协程之线程池探索之旅(与Java线程池PK)&#xff0c;当时偏重于整体原理&#xff0c;对于细节之处并没有过多的着墨&#xff0c;后来在实际的使用过程中遇到了些问题&#xff0c;也引发了一些思考&#xff0c;故记录之…...

Dynamic Movement Primitives (DMP) 学习

Dynamic Movement Primitives (DMP) 学习 【知乎】Dynamic Movement Primitives介绍及Python实现与UR5机械臂仿真 1. DMP的建模过程 链接&#xff1a;Dynamic Movement Primitives介绍及Python实现与UR5机械臂仿真 - 知乎 (zhihu.com) 沙漏大佬&#xff01;&#xff01;&am…...

2023王道考研数据结构笔记第五章——树

第五章 树 5.1 树的基本概念 树是n&#xff08;n≥0&#xff09;个结点的有限集合&#xff0c;n 0时&#xff0c;称为空树。 空树——结点数为0的树 非空树——①有且仅有一个根节点 ​ ②没有后继的结点称为“叶子结点”&#xff08;或终端结点&#xff09; ​ ③有后继的结…...

setState函数是异步的还是同步的?

setState函数是异步的还是同步的&#xff1f; 可能很多同学在看到这个问题的时候&#xff0c;甚至搞不清楚这个问题在问什么。 不要慌&#xff0c;我们看一下下面这个例子,首先我们创建一个类组件,这个类组件中&#xff0c;我们定义了state是一个对象&#xff0c;对象中有一个…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

synchronized 学习

学习源&#xff1a; https://www.bilibili.com/video/BV1aJ411V763?spm_id_from333.788.videopod.episodes&vd_source32e1c41a9370911ab06d12fbc36c4ebc 1.应用场景 不超卖&#xff0c;也要考虑性能问题&#xff08;场景&#xff09; 2.常见面试问题&#xff1a; sync出…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎&#xff08;Physics Engine&#xff09; 物理引擎 是一种通过计算机模拟物理规律&#xff08;如力学、碰撞、重力、流体动力学等&#xff09;的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互&#xff0c;广泛应用于 游戏开发、动画制作、虚…...

树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频

使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源&#xff1a; http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真

目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销&#xff0c;平衡网络负载&#xff0c;延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

Appium+python自动化(十六)- ADB命令

简介 Android 调试桥(adb)是多种用途的工具&#xff0c;该工具可以帮助你你管理设备或模拟器 的状态。 adb ( Android Debug Bridge)是一个通用命令行工具&#xff0c;其允许您与模拟器实例或连接的 Android 设备进行通信。它可为各种设备操作提供便利&#xff0c;如安装和调试…...

linux arm系统烧录

1、打开瑞芯微程序 2、按住linux arm 的 recover按键 插入电源 3、当瑞芯微检测到有设备 4、松开recover按键 5、选择升级固件 6、点击固件选择本地刷机的linux arm 镜像 7、点击升级 &#xff08;忘了有没有这步了 估计有&#xff09; 刷机程序 和 镜像 就不提供了。要刷的时…...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

JS设计模式(4):观察者模式

JS设计模式(4):观察者模式 一、引入 在开发中&#xff0c;我们经常会遇到这样的场景&#xff1a;一个对象的状态变化需要自动通知其他对象&#xff0c;比如&#xff1a; 电商平台中&#xff0c;商品库存变化时需要通知所有订阅该商品的用户&#xff1b;新闻网站中&#xff0…...