蓝桥等考Python组别
十二
级
第一部分:选择题
1、Python L
12
(15分)
运行
下面
程序,输出的结果是
( )。
lis
= [
3
,
1
,
6
,
9
,
2
,
5
]
print(
lis
[
0
:
2
])
[
3
,
1
]
[
3
,
1
,
6
]
[
3
]
[
1
,
6
]
正确答案:
A
2
、Python L
12
(
15
分)
运行
下面
程序,输出的结果是
( )。
lis
=
[
'A'
,
'B'
,
'C'
,
'D'
,
'E'
]
lis
.append(
'A'
)
print(
len(lis)
)
4
5
6
7
正确答案:
C
3、Python L
12
(20分)
运行
下面
程序,输出的结果是
( )。
lis
= [[
3
,
2
], [
5
,
1
]]
print(
lis
[
1
][
0
])
3
2
5
1
正确答案:
C
第二部分:编程题
4、Python L
12
列表部分元素求和
(
2
0分)
题目名称:
列表部分元素求和
题目描述:
在一行输入
几个正
整数,
用这几个正整数建立
一个列表,
输出
除了列表
头尾两个
元素外,
其余
元素的和。
输入:
一行,按字符串形式输入若干个正整数(数量
大于3
),相邻两个正整数用一个空格分隔。
提示:
s = input()
#输入一个字符串,赋值给s
a = s.split(' ') #
将字符串s按空格拆分,保存到列表
a中
lis = [int(i) for i in a]
#
将列表a的元素转换成整数,保存到列表lis
中
输出:
一个整数,表示建立的列表中,
除了
头尾两个
元素外,
其余
元素的和
。
输入样例:
1 2 3 4
输出样例:
5
参考程序:
s = input()
a = s.split(' ')
lis = [int(i) for i in a]
print(sum(lis[1 : len(lis) - 1]))
测试数据:
1.in
1 2 3 4
1.out
5
2.in
1 2 3 2 3 6 9
2.out
16
3.in
1 2 4 7 4
3.out
13
4.in
5 3 8 2
4.out
11
5.in
5 3 3 8 9 22 14 20
5.out
59
5
、Python L
1
2
最大得分
(
3
0分)
题目名称:
最大得分
题目描述:
有一座二层的旅店,上下层各有n个房间。
你从上层最左边的房间出发,目标是走到下层最右边的房间。每个房间都有一个分值,你会收集所走过房间的所有分值。
上层每个房间都有通向下层的楼梯。你只能向右边房间走或下楼,下楼后不能再上楼。
已知每个房间的分值,请计算你最多能得到多少分。
例如:
上层的4个房间的分值分别是2,4,1,3;下层的4个房间的分值分别是3,3,5,1。最优的方案是从左边第二个房间下楼,最后得分是15,路线如下图所示。
输入:
第一行一个正整数,为每层
房间的数量n(2<=n<=20);
第二行,按字符串形式输入
n
个正整数(大小在
1~20范围内
),相邻两个正整数用一个空格分隔,表示
上层从左到右每个房间的分值;
第
三
行,按字符串形式输入
n
个正整数(大小在
1~20范围内
),相邻两个正整数用一个空格分隔,表示
下层从左到右每个房间的分值。
提示:
s = input()
#输入一个字符串,赋值给s
a = s.split(' ') #
将字符串s按空格拆分,保存到列表
a中
lis = [int(i) for i in a]
#
将列表a的元素转换成整数,保存到列表lis
中
输出:
一个正整数,
表示你最多能得到的分值
。
输入样例:
4
2 4 1
3
3 3 5 1
输出样例:
15
参考程序
1
:
n = int(input())
s1 = input()
a1 = s1.split(' ')
lis1 = [int(i) for i in a1]
s2 = input()
a2 = s2.split(' ')
lis2 = [int(i) for i in a2]
ans = 0
for i in range(n):
ans = max(ans, sum(lis1[0 : i + 1])
+
sum(lis2[i : n]))
print(ans)
参考程序2:
n = int(input())
s1 = input().split(' ')
s2 = input().split(' ')
lisUp = [int(i) for i in s1]
lisDown = [int(i) for i in s2]
lisScore = []
for i in range(n):
lisScore.append(sum(lisUp[0 : i + 1])+sum(lisDown[i : ]))
print(max(lisScore))
测试数据:
1.in
4
2 4 1 3
3 3 5 1
1.out
15
2.in
5
13 14 2 19 11
15 14 16 12 20
2.out
90
3.in
8
14 10 20 1 10 12 15 15
18 16 19 4 4 3 10 14
3.out
111
4.in
10
9 16 20 18 18 11 14 2 20 9
10 3 16 10 12 10 11 13 13 19
4.out
162
5.in
12
10 19 2 15 11 20 6 16 13 11 15 9
6 12 4 3 17 5 20 3 5 5 6 14
5.out
161
蓝桥杯青少组Python组别12级编程练习真题(第6套,共8套)