qy_蓝桥杯编程系列_编程17 好数

news/2025/12/2 21:03:52/文章来源:https://www.cnblogs.com/isbabydoll/p/19299308

编程17 好数 简析

这题写起来说难不难,只是我卡了好几次所以写一篇梳理下思路

一、 题目引入

image

如图所示的题目,看起来也并不复杂,从数字尾端作奇数位开始往前算,奇数位和偶数位相交替,个位是奇数位,十位就是偶数位,百位是奇数位以此类推。一个数字N的奇数位和偶数位上对应为奇数和偶数就算作一个好数,我们需要求从1开始到N的一共有多少个这样的数即可。我的思路是两个循坏搞定。

二、 解题

先输入整数N,定义计数变量

N = int(input())
count = 0                # 统计符合条件的数字个数

进入第一层循坏之后,首先需要单独设定代表当前数字的变量current,以免用该数字遍历时所作修改影响外层循环遍历,然后需要设定标志变量,用于更改奇数和偶数位状态、当前是否为好数

for num in range(1, N + 1):current = numtarget_parity = 1         # 判定当前是奇数位还是偶数位,1-奇数位,0-偶数位is_good = 1               # 判定当前还是否为好数,1-好数,0-不是好数

然后对当前遍历的数字num进行判断,其奇数位和偶数位是否分别为奇数和偶数,用取余判断即可,循环整除以便确定这个数上的每一位

while current > 0:digit = current % 10current //= 10# 若当前为奇数位if target_parity == 1:if digit % 2 != 1:      # 奇数位上数字不为奇数时is_good = 0           # 不是好数break# 若当前为偶数位else:if digit % 2 != 0:      # 偶数位上不是偶数is_good = 0           # 不是好数break# current经过整除来到上一位,奇偶数位改变,奇偶数位判定相应切换target_parity = 1 - target_parity

第二层循环结束后可以根据is_good判断该数是否为好数

if is_good == 1:count += 1

此题难点在逻辑梳理上,需要理清楚两个循环和两个标志变量的关系,放在合适的位置,否则可能出现过多冗余甚至错误。

Tips:完整代码

N = int(input())
count = 0                # 统计符合条件的数字个数for num in range(1, N + 1):current = numtarget_parity = 1         # 判定当前是奇数位还是偶数位,1-奇数位,0-偶数位is_good = 1               # 判定当前还是否为好数,1-好数,0-不是好数while current > 0:digit = current % 10current //= 10# 若当前为奇数位if target_parity == 1:if digit % 2 != 1:      # 奇数位上数字不为奇数时is_good = 0           # 不是好数break# 若当前为偶数位else:if digit % 2 != 0:      # 偶数位上不是偶数is_good = 0           # 不是好数break# current经过整除来到上一位,奇偶数位改变,奇偶数位判定相应切换target_parity = 1 - target_parityif is_good == 1:count += 1print(count)

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

读书笔记 XILINX ug1137-Zynq UltraScale+ MPSoC Software Developer Guide 软件开发者指南 Chapter1Chapter2

XILINX文档ug1137-Zynq UltraScale+ MPSoC Software Developer Guide 软件开发者指南 Chapter1&Chapter2读书笔记前言 前两天刷B站的时候发现有UP在控诉CSDN的逆天操作,特别是将非VIP文章转为VIP文章这点确实很恶…

static相关

类变量与实例变量2.类方法与实例方法 (1)类方法的应用场景:工具类 例如:Math.pow() (2)使用建议:将构造方法私有,例如: private Math(){} 使得本类之外不可以创建工具类对象,节省创建对象的内存 3.static的一些注…

74_基于深度学习的垃圾桶垃圾溢出检测体系(yolo11、yolov8、yolov5+UI界面+Python项目源码+模型+标注好的数据集)

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

Java创建对象完整流程详解

目录Java创建对象完整流程详解自己的简单描述更准确的创建对象流程:1. 编写源代码 (编写 A.java 文件)2. 编译阶段 (javac 编译)3. 类加载阶段 (JVM 执行时)4. 获取 Class 对象5. 创建实例对象Class 对象在对象创建中…

PQ v.Next Beta计划与估计

PQ v.Next Beta计划与估计 随着 Alpha 阶段的结束,PQ .v.Next 项目正式进入 Beta 开发阶段。基于 Alpha 阶段的经验教训(Postmortem)以及用户反馈,我们制定了详细的 Beta 阶段计划。 1、团队成员调整 暂无成员离开…

re笔记5

polarctf逆向另辟蹊径 法一: 这道题目运行后让点击100000次后给出flag 借助CE修改器,扫描100000数值,直接修改数值再次点击即可得到flag法二:动态调试 使用x32dbg 在句柄中找到哈希值,猜测为flag,结果正确

北京陪诊公司陪诊师排行

“三甲医院科室多如迷宫,检查单堆了厚厚一沓,连缴费窗口都要找半天”——这是不少来京就医者的共同经历。随着异地就医需求攀升,陪诊服务已从“可选项”变为刚需。记者结合市卫健委相关调研数据、第三方服务评估报告…

北京陪诊公司排行:专业服务破解就医难题,三甲机构树立行业标杆

在协和医院门诊大厅,来自西安的胃癌患者张先生看着手中的检查单一脸茫然,他凌晨4点就开始排队,却因不熟悉流程而错过了专家号。这样的就医困境,正在催生一个专业化、规范化的陪诊服务市场。 挂号、排队、检查、取药…

#线段树#洛谷 12401 [COI 2025] 玻利维亚 / Bolivija

线段树题目传送门分析 对于对称的一对高度 \(x,y(x<y)\),\(x\leq A<B\leq y\) 的二元组都不可以选。 不妨将 \((A,B)\) 二元组的个数转化为 \((A+1,B)\) 二元组的个数,那么 \(x+1\leq A+1\leq B\leq y\), 相当…

【RAG安全】Pirates of the RAG: Adaptively Attacking LLMs to Leak Knowledge Bases - 指南

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

20232319 2025-2026-1 《网络与系统攻防技术》实验八实验报告

1.实验内容 (1)Web前端HTML 能正常安装、启停Apache。理解HTML,理解表单,理解GET与POST方法,编写一个含有表单的HTML。 (2)Web前端javascipt 理解JavaScript的基本功能,理解DOM。 在(1)的基础上,编写JavaScript…

北京上门收酒茅台五粮液洋酒老酒名酒

在北京市中心一间宽敞明亮的客厅里,专业鉴定师老陈轻轻旋开一盏紫光灯,仔细端详着手中那瓶1987年的五星牌茅台酒,旁边的张先生屏住呼吸,直到听见“品相完好,市场稀缺”的鉴定结果,才终于松了一口气。 对许多北京…

北京上门收酒茅台五粮液洋酒老酒名酒董酒习酒

长辈传下的整箱茅台不知如今值多少,商务往来收到的五粮液在家闲置占地方,多年前入手的洋酒想出手却摸不准行情,压箱底的老酒连真假都没把握——在酒文化浓厚的北京,不少人手里都攥着这类“宝贝”,可变现时的迷茫和…

sw_64架构 docker-ce-cli rpm 安装方法(附安装包)

sw_64架构 docker-ce-cli rpm 安装方法(附安装包)​第一步:先看看有没有装过旧版本(有的话删掉) 打开终端,输入 rpm -qa | grep docker,要是跳出类似“docker-ce-cli”或者旧版docker的名字,就用 sudo rpm -e …

919191# B4358 [GESP202506 三级] 奇偶校验

919191# B4358 [GESP202506 三级] 奇偶校验题目描述 数据在传输过程中可能出错,因此接收方收到数据后通常会校验传输的数据是否正确,奇偶校验是经典的校验方式之一。 给定 n 个非负整数 c 1,c 2,…,c n代表所传输的…

this view is read-only (IntelliJ IDEA) - 详解

pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas", "Monaco", "Courier New", …

构建高可靠 OpenEuler 运维体系:从虚拟化部署到 Systemd 自动化核心实践 - 教程

构建高可靠 OpenEuler 运维体系:从虚拟化部署到 Systemd 自动化核心实践 - 教程2025-12-02 20:37 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overfl…

内存管理-55-工具-page_types - Hello

内存管理-55-工具-page_types注: 基于msm-5.4 一、简介 本文主要介绍 tools/vm/page-types.c。 1. page-types.c 的作用 chatGPT: Linux内核中 tools/vm/page-types.c 文件的作用? Linux内核中的 tools/vm/page-types…

2025 年黑猪批发基地品牌推荐排行榜,黑金刚黑猪批发,国寿黑猪批发,杜洛克黑猪批发,沂蒙黑猪批发,太湖原种黑猪批发,三元仔猪黑猪批发,长白仔猪黑猪养殖,黑猪繁育,黑猪仔猪批发,原种黑猪批发基地推荐

引言近年来,畜牧养殖产业在农业强国战略的推动下持续升级,黑猪作为兼具营养价值与市场潜力的品类,受到养殖户与消费者的双重关注。然而行业发展中仍存在诸多痛点:部分基地繁育标准不统一,品种纯度难以保障;检疫流…

2025年必收藏的8款AI论文生成神器!高效写作轻松搞定

作者深夜为毕业论文发愁,交流后发现大家都在论文苦海中挣扎。好在AI技术发展,为大家分享2025年8款AI论文生成神器。包括瑞达写作、QuillBot、PaperFine等,各有特点。如瑞达写作能一键生成初稿、智能改稿等;QuillBo…