STEMA 考试 Python 中高级试卷 ( 1 月 )
一、选择 题
第一题
下列哪个是赋值运算符?( )
A、 = B、! = C、 == D、 //
第二题
Python 中定义函数的关键字是 ( )。
A、 class B、 import C、 def D、 while
第三题
Python 中可以创建 空 字典 的 是 ( )。
A、 dic = () B、 dic = {}
C、 dic = set() D、 dic = []
第四题
已知: s = 'pythonnohtyp' ,执行 print(s.index('h') + s.rindex('n')) 语句后,输出的结果
是( )。
A、 -2 B、 -3
C、 9 D、 11
第五题
已知 a = {1, 2, 3, 4, 5} , b = {2, 3, 4, 5, 6} 。下列选项中可以获得集合 {1, 6} 的是 ( )。
A、 (a & b) | (a - b) B、 (a | b) | (a - b)
C、 (a - b) & (b - a) D、 (a | b) - (b & a)
二、 编程题
第一题
提示信息 :
整数 n 的立方 = n × n × n。
编程实现:
给定一个整数 n,计算 n 的立方 。
例如: n = 2, 2 的立方等于 8 ( 8 = 2 × 2 × 2)。
输入描述: 输入一个 整数 n( 1≤ n≤ 1000 )
输出描述: 输出一个 整数 , 表示 n 的立方
样例输入: 2
样例输出: 8
第二题
编程实现 :
给定 三 个 互不相同的 整数, 找 出其中第二大的 数。
例如: 三 个整数分别为 30 、 20 、 25 ,其中 第二大的 数 是 25。
输入描述: 输入 共三行,每行一 个整数( 1≤ 整数 ≤ 1000 ), 三个 整数 互不相同
输出描述: 输出 一个整数,表示三个 整数 中第二大的 数
样例输入:
30
20
25
样例输出:
25
第三题
编程实现:
工人需要将 n 个 边长为 1 的 正方体 箱子整齐地 摆 放在长度为 L,宽度为 1 的区域。 要求 每一层 摆 满 L 个
箱子 后, 才能 往上一层 摆放 。
请计算 n 个箱子 可以 放 多少层(最 上 层 只要有箱子就 算作一层 ),以及最 上 层有几个箱子。
例如: n = 8, L = 3,将 8 个箱子 摆放 在长度为 3,宽度为 1 的区域,可以放 3 层,最 上 层有 2 个箱
子。
输入描述:
第一行 输入 一个整数 n( 1≤ n≤ 100 ),表示箱子 数量
第二行 输入 一个整数 L( 1≤ L≤ 100 ),表示区域的长度
输出描述:
输出 两个整数,分别表示 n 个箱子可以放多少层 以及 最 上 层有几个箱子,整数之间以一个空格隔开
样例输入:
8
3
样例输出:
3 2
第四题
提示信息 :
数字塔 : 是由 若干个正六边形搭建 的一个 n 层 的塔 , 其中每个正六边形 中 都 有一 个整数 , 正六边形和整数的
排列规律如下:
第 n 层的整数从左到右为 1、 2、 3......n
编程实现:
给定 一 个整数 n,根据提示信息中数字塔的规律,请 计算 n 层数字塔 中所有整数的和 。
例如: n = 4, 4 层的 数字塔 如下:
所有正六边形中的整数为 1、 1、 2、 1、 2、 3、 1、 2、 3、 4;
所有整数的和为 20 。
输入描述: 输入 一 个 整数 n( 1≤ n≤ 100 ),表示 数字塔的层数
输出描述: 输出 一个整数, 表示 n 层的数字塔 中所有整数的和
样例输入: 4
样例输出: 20
第五题
编程实现:
小蓝 用 仅包含 小写字母 的字符串 表示整数 , 规则 如下:
给定一 个整数 n,输出 n 对应的 字符串 。
例如: n = 28 , 28 对应 的 字符串 为 ab 。
输入描述: 输入 一个 整数 n( 1≤ n≤ 10 8)
输出描述: 输出 一个 字符串 ,表示 n 对应的字符串
样例输入: 28
样例输出: ab
第六题
提示信息:
密码锁:由 n 个从左到右并排的圆环组成,每个圆环上都有 10 个数字( 0~9 ),蓝色框内为密码显示区 ,
每个圆环在密码显示区只能显示一个数字,如图所示。可以拨动圆环,来改变密码显示区显示的数字。
当密码显示区的数字与密码一致时,密码锁就会被打开。
编程实现:
有一个由 n 个圆环组成的密码锁 , 和一个 n 位的密码 S( S 由 1~9 中的 数字 ( 包含 1 和 9) 组成 ) 。 每
次操作只能选择一个或 位置 连续的多个圆环拨动 。 当 S 中的字符从左到右依次显示在 密码显示区时 , 密码锁
会被打开。
已知每个圆环在密码显示区初始数字都为 0, 请计算最少需要操作多少次, 才能打开密码锁。
注意:
1、如果选择了其中一个圆环,可将该圆环中任意一个数字拨动到 密码显示区 ,表示 1 次操作;
例如:将第 3 个圆环拨动到 数字 4,表示 1 次操作:
2、如果选择了 位置 连续的 多个 圆环,只能将这些圆环拨动成同一个数字,显示在密码显示区,表示 1 次操
作。
例如:将 连续的第 2 个到第 3 个圆环都拨动到 数字 5,表示 1 次操作:
例如:
n = 5, S = "12321 "; 分别 表示 5 个圆环组成的密码锁和密码 12321 ;将 5 位密码 1、 2、 3、 2、 1
从左到右依次 显示在 密码显示区, 以下是操作次数 最少 的方案 :
第一次操作, 将 5 个初始状态为 0 的圆环全部拨动到数字 1:
第二次操作, 将 第 2 个 到第 4 个圆环全部拨动到数字 2:
第三次操作, 将 第 3 个圆环拨动到数字 3:
最少需要操作 3 次,才能 打开密码锁 。
输入描述:
第一行输入一个整数 n( 1≤ n≤ 100 ),表示 组成
2024年1月蓝桥杯青少组STEMA测评第四轮Python中高级真题试卷,2024年1月第十五届蓝桥杯青少组STEMA测评Python中高级真题试卷