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

python查找支撑数 青少年编程电子学会python编程等级考试三级真题解析2022年3月

目录

python查找支撑数

一、题目要求

1、编程实现

2、输入输出

二、算法分析

三、程序代码

四、程序说明

五、运行结果

六、考点分析

七、 推荐资料

1、蓝桥杯比赛

2、考级资料

3、其它资料


python查找支撑数

2022年3月 python编程等级考试级编程题

一、题目要求

1、编程实现

查找“支撑数”。在已知一组整数中,有这样一种数非常怪,它们不在第一个,也不在最后一个,而且刚好都比左边和右边相邻的数大,你能找到它们吗 ?输入一个数组,输出每个支撑数的数值以及它们在数组中位置编号。

请编写程序实现上述功能,补全代码。

s = input()
x = s.split(' ')
a = []
for i in range(0,len(x)):a.append(int(①))
b = []
c = []
for i in range(1,②):if (a[i]>a[i-1] and ③):b.append(a[i])c.append(④)
for i in range(⑤):print(b[i],' ',c[i])

2、输入输出

输入描述:输入一组数字

输出描述:输出每个支撑数的数值以及它们在数组中位置编号

输入样例:

1 3 2 4 1 5 3 9 7 10 8 23 85 43

输出样例:

3 2
4 4
5 6
9 8
10 10
85 13

二、算法分析

  1. 从题目分析可以得出,是要给输入的一串数字找出对应的支撑数,题目要告知支撑数的定义和规则,同时也给定了一部分代码

  2. 从给定的题目和部分程序中可以看到,x列表是存放输入的所有数字的字符串类型,a列表是对应的整数类型,缺省的第一部分就是将字符串类型值转换成整型类型值,所以填入的应该是:x[i]

  3. b列表存放的是符合条件的元素,c列表是该元素对应的索引号;缺省的第二部分就是a列表中从第二项到倒数第二项的值,所以填入的应该是:len(a)-1

  4. 缺省的第三部分就是当前元素大于右边的元素,所以填入的应该是:a[i]>a[i+1]

  5. 缺省的第四部分就是将当前符合条件的元素的索引号加入c列表中,但是要知道索引号在列表中是从0开始的,所以填入的应该是:i+1

  6. 缺省的第五部分就是遍历符合要求的所有元素,然后输出,这里可以是列表b或者列表c的长度,所以填入的应该是:len(b[i]) 或者 len(c[i])

 本文作者:小兔子编程 作者首页:https://blog.csdn.net/frank2102

三、程序代码

s = input()
x = s.split(' ')
a = []
for i in range(0,len(x)):a.append(int(x[i]))
b = []
c = []
for i in range(1,len(a)-1):if (a[i]>a[i-1] and a[i]>a[i+1]):b.append(a[i])c.append(i+1)
for i in range(len(b)):print(b[i],' ',c[i])

四、程序说明

  1. 代码通过 input() 函数获取一个字符串作为输入,并将其赋值给变量 s
  2. 接下来,代码使用 split(' ') 函数将字符串 s 按空格进行切割,得到一个切割后的字符串列表,并将其赋值给列表 x
  3. 然后,代码创建了一个空列表 a。 接下来的 for 循环通过遍历列表 x,将其中的每个元素转换为整数,并将其添加到列表 a 中
  4. 然后,创建了两个空列表b 和 c,代码继续使用两个 for 循环。第一个循环遍历 a 列表中的索引值(从 1 开始到 len(a)-1 结束,即第二个元素到倒数第二个元素),并使用两个条件判断语句检查当前元素是否比前后两个元素都大。如果满足条件,则将该元素添加到列表 b 中,并将其索引值(加 1)添加到列表 c 中
  5. 最后,代码使用另一个 for 循环遍历列表 b,并输出其中的每个元素以及其对应的索引值。

五、运行结果

1 3 2 4 1 5 3 9 7 10 8 23 85 43
3   2
4   4
5   6
9   8
10   10
85   13

六、考点分析

难度级别:中等,这题相对而言还是有一点小难度,难在列表相关操作,具体主要考查如下:

  1. input函数:Python 中 input() 函数接受一个标准输入数据,返回为 string 类型。
  2. int函数:将传入的参数强制转换成整数
  3. list函数:强制将参数转化成列表对象
  4. 列表对应的操作:len、min、sort等等函数的使用
  5. 学会if条件判断语句的使用,满足一定条件才能执行后面的语句
  6. 学会if...else...双分支语句的使用,条件满足执行一种处理,不满足执行另一种处理
  7. for循环:for循环可以遍历任何有序的项及列表元素等等。
  8. range函数:rang(a,b),循环的时候是不包括b的,所以我们这个案例中要转变一下,要想包含b,就应该写成range(a,b+1)
  9. print函数:用于打印输出,最常见的一个函数。
  10. 学会分析题目,算法分析,将复杂问题模块化,简单化,从中找到相应的解题思路
  11. 充分掌握分支语句、循环语句和简单算法知识的使用及输入输出函数的用法

PS:方式方法有多种,小朋友们只要能够达到题目要求即可!

七、 推荐资料

  • 所有考级比赛学习相关资料合集【推荐收藏】

1、蓝桥杯比赛

  • 蓝桥杯python选拔赛真题详解

  • 蓝桥杯python省赛真题详解

  • 蓝桥杯python国赛真题详解

  • 历届蓝桥杯科技素养计算思维真题解析

2、考级资料

  • python等级一级真题解析【电子学会】

  • python等级二级真题解析【电子学会】

  • python等级三级真题解析【电子学会】

  • python等级四级真题解析【电子学会】

3、其它资料

  • 初学python100例

  • 历届蓝桥杯scratch国赛真题解析
  • 历届蓝桥杯scratch省赛真题解析
  • 历届蓝桥杯scratch STEMA选拔赛真题解析
  • 历届蓝桥杯科技素养计算思维真题解析
  • 画图-scratch编程考级99图
  • 电子学会历年scratch等级考试一级真题解析
  • 电子学会历年scratch等级考试二级真题解析
  • 电子学会历年scratch等级考试三级真题解析
  • 电子学会历年scratch等级考试四级真题解析
  • 零基础学习scratch3.0【入门教学 免费】
  • 零基础学习scratch3.0【视频教程 114节 免费】
http://www.lryc.cn/news/386361.html

相关文章:

  • 创建一个快速、高效的网络爬虫:PHP和Selenium示例
  • 两张图片怎样拼在一起?将两张图片拼在一起的几种方法介绍
  • 百日筑基第五天-关于maven
  • 【CSS in Depth 2 精译】2.2 em 和 rem + 2.2.1 使用 em 定义字号
  • C++Primer Plus 第十四章代码重用:14.4.4 数组模板示例和非类型参数
  • 短视频哪个软件好用?成都柏煜文化传媒有限公司
  • 金融科技:重塑用户体验,驱动满意度飙升
  • JavaScript——算术运算符
  • 备份SQL Server数据库并还原到另一台服务器
  • 二刷算法训练营Day45 | 动态规划(7/17)
  • 大模型项目落地时,该如何估算模型所需GPU算力资源
  • LLM应用开发-RAG系统评估与优化
  • 秋招突击——第七弹——Redis快速入门
  • 软考初级网络管理员__操作系统单选题
  • 从入门到精通:网络编程套接字(万字详解,小白友好,建议收藏)
  • dledger原理源码分析系列(一)架构,核心组件和rpc组件
  • 第七节:如何浅显易懂地理解Spring Boot中的依赖注入(自学Spring boot 3.x的第二天)
  • Postman自动化测试实战:使用脚本提升测试效率
  • CSMA/CA并不是“公平”的
  • 【漏洞复现】I doc view——任意文件读取
  • 图数据库 vs 向量数据库
  • 企业品牌出海第一站 维基百科词条创建
  • Windows下activemq集群配置(broker-network)
  • 心理辅导平台系统
  • 代理IP对SEO影响分析:提升网站排名的关键策略
  • 【leetcode--三数之和】
  • 解决Java中的ClassCastException问题
  • 【TensorFlow深度学习】混合生成模型:结合AR与AE的创新尝试
  • Spring:Spring中分布式事务解决方案
  • 音视频开发32 FFmpeg 编码- 视频编码 h264 参数相关