python蓝桥杯刷题4

1.好数

题解:首先分析题目要求奇数位上的数字是奇数,偶数位上的数字是偶数。开始解题,定义一个count变量为0,输入一个数字,for循环从1开始遍历到n+1,定义一个x作为一会的判断条件,将数字转换为字符串的形式,使用len函数计算出它的长度,作为坐标,坐标是从0开始到num1的长度。根据坐标去判断是奇数位还是偶数位,最后判断是否满足条件即可,满足给count+1继续循环直到循环终止。

重点分析一下坐标怎么去判断奇数位还是偶数位:

  1. 比如23的长度是2,从0-2遍历不包含2,num[0] = 2 num[1] = 3,奇数位是坐标为1的3,偶数位是坐标为0的2,奇数位的数对应的坐标就是奇数,判断方式就是舍去奇数坐标上不是奇数的,和偶数坐标上不是偶数的

  2. 比如253的长度是3,从0-3遍历不包含3,num[0] = 2 num[1] = 5,num[2] = 3,奇数位上是2和3,偶数位是5,但是他们此时的坐标2和5对应的坐标为0和2,也就是此时奇数位的数对应的坐标成了偶数,判断方式就是舍去奇数坐标上不是偶数的,和偶数坐标上不是奇数的

总结一下就是如果数字的长度是偶数,就满足1的情况,是奇数就满足2的情况,

2.回文字符串

题解:分析题目要求,输入一个只包含小写字母的字符串s,可以在字符串中加入任意个指定字符:l、q、b,满足回文数的条件,也就是从前往后跟从后往前一样。输入n作为行数,接下来输入n行字符串,对每一行字符串进行判断,满足回文数输出yes,不满足no。

重点分析:

先观察给出的案例gmgqlq是不是要在开头加上qlq即可构成回文字符串,形参qlqgmgqlq,仔细思考发现,在开头处加指定字符要满足回文数,也就是说字符串内部也会包含指定字符,那么我们直接使用replace函数将内部指定字符全部换成空字符,即删除内部的指定字符,在判断剩下的是不是回文字符即可。

3.奇怪的捐赠

题解:分析题目要求把钱分成若干个7的倍数。循环若sum>=0,取sum除以7的余数为i,将i加入到列表中,在对sum一直向下整除于7取商,直到sum=0时,结束循环,使用join函数,将列表中的元素转换为字符串并拼接起来,具体不懂得好好去看看十进制是如何计算的,因为取余时的顺序是从前往后但是进制是从后往前计,可以倒着排一次,就变成了七进制下的100万,但是也可以不用,因为本题只是计算份数,然后print输出发现所有的数都小于5,满足条件,最后for循环把所有的数加起来就是最终求的份数

重点就是自己明白十进制的计算思路就行!

相关推荐
烁34716 分钟前
每日一题(小白)动态规划篇2
算法·动态规划
南玖yy1 小时前
数据结构C语言练习(栈)
c语言·数据结构·算法
阿镇吃橙子1 小时前
一些手写及业务场景处理问题汇总
前端·算法·面试
酱酱哥玩AI1 小时前
Trae编译器:实现多目标班翠鸟优化算法(IPKO)无人机路径规划仿真(Python版),完整代码
算法
MPCTHU1 小时前
二叉树、排序算法与结构图
数据结构·算法·排序算法
亓才孓1 小时前
[leetcode]树的操作
算法·leetcode·职场和发展
王禄DUT2 小时前
化学方程式配平 第33次CCF-CSP计算机软件能力认证
开发语言·c++·算法
wuqingshun3141592 小时前
蓝桥杯 XYZ
数据结构·c++·算法·职场和发展·蓝桥杯
DreamByte2 小时前
C++菜鸟教程 - 从入门到精通 第五节
开发语言·c++·算法
南玖yy2 小时前
数据结构C语言练习(两个队列实现栈)
c语言·数据结构·算法