第十四届蓝桥杯青少组模拟赛Python真题(2023年2月12日)

2023年06月02日

一、选择题

第 1 题 单选题

关于Python3.10,下列选项描述正确的是( )。

A. continue语句可以结束整个循环的执行

B. break和continue语句只能用在循环中

C. 要从嵌套循环中退出时,只能使用goto语句

D. break和continue语句在循环体内的作用相同

第 2 题 单选题

下列数据类型中,哪一个是不可变的?( )

A. 列表

B. 元组

C. 字典

D. 集合

第 3 题 单选题

以下关于函数参数描述正确的是( )。

A. 调用函数时,按参数名称传递参数,需要按照定义时的顺序进行传递

B. 函数在定义时,可选参数的位置可以在參数列表中任意位置

C. 函数在定义时,可以不指定可选参数默认值,在调用函数时传入参数

D. 必需参数须以正确的顺序传入函数,调用时的数量必须和声明时的一样

第 4 题 单选题

下列运算符中,优先级最高的是( )。

A. /

B. %

C. **

D. +

第 5 题 单选题

执行以下程序后,输出的结果是( )。

L=[1,2,3,4,5,6,7,8,9]

print(L[1:4])

A. [1,2,3]

B. [1,2,3,4]

C. [2,3]

D. [2,3,4]

二、编程题

第 6 题 问答题

题目描述:

(注input()输入函数的括号中不允许添加任何信息)

时间限制:3000MS 内存限制:589824KB

编程实现:

输入一个整数N(-100<=N<=100),输出N-5的结果。

例如:N = 8,8-5的结果为3。

输入描述

输入一个整数N(-100<=N<=100)

输出描述

输出一个整数,表示N-5的结果

样例输入:

8

样例输出:

3

第 7 题 问答题

题目描述:

(注.input()输入函数的括号中不允许添加任何信息)

时间限制:3000MS 内存限制:589824KB

编程实现:

给定一个正整数N(2≤N≤1000),请将N拆分成两个正整数A和B,且A和B尽量接近(N=A+B,A>=B,且A减B的值最小)。

例如:

N=4,拆分成2和2,此时2减2的值最小;

N=5,拆分成3和2,此时3减2的值最小。

输入描述

输入一个正整数N(2<=N<=1000)

输出描述

第一行输出一个正整数,表示拆分后的A

第二行输出一个正整数,表示拆分后的B

样例输入:

5

样例输出:

3
2

第 8 题 问答题

题目描述:

(注.input()输入函数的括号中不允许添加任何信息)

时间限制:3000MS 内存限制:589824KB

编程实现:

某商店搞促销活动“买二免一”,活动内容如下:

每买两件商品,结算时只收取其中价格高的商品费用,另一件商品不收取费用(相同价格只收取一件商品费用)。

小明选购了N件商品(2<=N<=1000,N为偶数),且已知每件商品的价格。请帮助小明,把商品进行两两组合,使得购买花费最少,并输出总费用。

例如:

N=6,6件商品价格分别为32、56、92、45、12、98,共结算3次。

当98与92组合,56与45组合,32与12组合时,花费最少,总费用为186(186=98+56+32)。

输入描述

第一行输入一个正整数N(2≤N≤1000,N为偶数),表示小明选购的商品数量

第二行输入N个正整数(1≤正整数≤100),表示每件商品的价格,正整数之间以一个英文逗号隔开

输出描述

输出一个整数,表示购买N件商品最少需要花费的钱数

样例输入

6
32,56,92,45,12,98

样例输出

186

第 9 题 问答题

题目描述:

(注.input()输入函数的括号中不允许添加任何信息)

时间限制:3000MS 内存限制:589824KB

编程实现:

期末考试小明取得了优异的成绩,妈妈为鼓励小明再接再厉,在网购平台指定了N(2<=N<=50)件礼物供小明挑选。挑选前妈妈提出了以下要求:

1)每种礼物只能挑选1件;

2)所挑选的礼物总价格不能大于V(1<=V<=100)。

已知N件礼物中每件礼物的价格和小明对每件礼物的喜爱值(喜爱值越大喜爱程度越高),请你帮助小明挑选礼物,使得挑选的所有礼物在满足要求的前提下,总的喜爱值最大,并输出最大喜爱值。

例如:

N=3,V=5,3件礼物的价格和喜爱值分别为(1,2),(2,4),(3,3)。

可挑选第二件礼物(2,4)和第三件礼物(3,3),总价格为5(5=2+3),总喜爱值为7(7=4+3),总价格不大于5且喜爱值最大,输出7。

输入描述

第一行输入两个正整数N(2≤N≤50)和V(1≤V≤100),分别表示指定的礼物数量和所挑选的礼物总价格不能大于的值,正整数之间以一个英文逗号隔开

第二行开始,输入N行,每行输入两个正整数J(1≤J≤V)和K(1≤K≤100),分别表示每件礼物的价格和喜爱值,正整数之间以一个英文逗号隔开

输出描述

输出一个整数,表示在满足题目要求下的最大喜爱值

样例输入

3,5
1,2
2,4
3,3

样例输出

7

第 10 题 问答题

题目描述:

(注.input()输入函数的括号中不允许添加任何信息)

时间限制:3000MS 内存限制:589824KB

编程实现:

小明有一张N*M的方格纸,且部分小方格中涂了颜色,部分小方格还是空白。

给出N(2≤N≤30)和M(2≤M≤30)的值,及每个小方格的状态(被涂了颜色小方格用数字1表示,空白小方格用数字0表示),请帮助小明找出最大的矩形空白区域,并输出该矩形空白区域由多少个小方格组成。

例如:N=4,M=5,4*5的方格纸中每个小方格的状态如下图:

最大的空白区域由6个小方格组成(红色框区域)。

输入描述

第一行输入两个正整数N和M(2≤N≤30,2≤M≤30),分别表示方格纸的行数和列数,两个正整数之间以一个空格隔开

第二行开始输入N行,每行M个整数(整数为1或者0),1表示涂色方格,0表示空白方格,整数之间以一个空格隔开

输出描述

输出一个整数,表示最大矩形由多少个小方格组成(如果没有空白小方格,输出0)

样例输入

4 5
1 1 0 0 0
1 0 1 0 0
0 0 0 1 1
0 0 0 1 0

样例输出

6