蓝桥等考Python组别
十六
级
第一部分:选择题
1、Python L
16
(15分)
创建一个空集合s的语句是( )。
s = {}
s = set()
s = set{}
s = {[]}
正确答案:
B
2
、Python L
16
(
15
分)
a和b是两个集合
,
“a & b”
可以用以下哪幅图的阴影部分表示?( )
正确答案:
D
3、Python L
16
(20分)
运行下面程序,输出的结果是( )。
s = set(
'AACAECA'
)
print(
len(
s
)
)
3
4
5
6
正确答案:
A
第二部分:编程题
4
、
Python L
1
6
交集
(
2
0
分)
题目名称:
交集
题目描述:
输入
两个
字符串
a和b,计算在a、b中同时出现过的不同字符的个数
。
例如:
a='ABCDE',b='ABFG',在a、b中同时出现过的字符有A、B,个数是2。
输入:
第一行一个
字符串a
(
长度
在
100以内
)
;
第
二
行一个
字符串b
(
长度
在
100以内
)
。
输出:
一个正整数,为在a、b中同时出现过的不同字符的个数。
输入样例:
ABCDE
ABFG
输出样例:
2
参考程序:
a = input()
b = input()
s1 = set(a)
s2 = set(b)
print(len(s1
&
s2))
测试数据:
1.in
ABCDE
BFG
1.out
1
2.in
ERTYUA
WERT
2.out
3
3.in
121231227
12315
3.out
3
4.in
8909
12421
4.out
0
5.in
99856775
99856775
5.out
5
5
、
Python L
16
盲盒
(
3
0
分)
题目名称:盲盒
题目描述:
某主题公园举办寻宝节。设计者将园区“寻宝地图”制作成拼图,分成
5
份,制作成5种盲盒,在自动售货机上售卖。如果你能凑齐这
5
种不同的拼图,就能拼出一副完整的寻宝图。
盲盒
1
元
1
个,在凑齐
5
种拼图之前,可能有些款式会重复出现。售货机现存的盲盒,也不一定
5
种拼图都齐全。
作为金卡会员的小蓝,用多年积攒的积分换了一张
“
透视卡
”
,可以看到售货机货舱里所有盲盒的种类,也可以看到“出货”的顺序。他非常清楚,至少要花多少钱才能凑齐
5
种盲盒。
按售货机
“
出货
”
的先后顺序输入所有盲盒,
5
种盲盒分别用
A
、
B
、
C
、
D
、
E
表示,输出要凑齐
5
种盲盒,至少要花的钱数。
如果把所有的盲盒都买下,也无法凑齐
5
种,小蓝肯定一个都不会买,输出
0
。
输入:
一个字符串,只包含
A
、
B
、
C
、
D
、
E
这五种字符,长度不超过10
0
,表示售货机的所有盲盒,按
“
出货
”
的先后顺序排列。
输出:
一个整数,表示要凑齐
5
种盲盒,至少要花的钱数。如果把所有的盲盒都买下也无法凑齐,输出
0
。
输入样例
1
:
ABBBACABECDAAB
输出样例
1
:
11
输入样例
2
:
BACABE
输出样例
2
:
0
参考程序
1
:
#
将字符串从头开始到第
i-1
为止的切片,转成集合
p
,去重,
i
递增
1
,凑齐
5
个就停止购买
s = input()
for i in range(len(s) + 1):
p = set(s[ : i])
if len(p) == 5:
ans = i
break
if len(p) < 5:
print(0)
else:
print(ans)
参考程序
2
:
def fun(s):
ans = 0
for i in range(0, 5):
t = s.find(chr(65 + i))
if t == -1:
return 0
ans = max(ans, t)
return ans + 1
x = input()
print(fun(x))
测试数据:
1.in
ABBBACABECDAAB
1.out
11
2.in
BACABE
2.out
0
3.in
CEDABAABC
3.out
5
4.in
CCDAADDEADA
4.out
0
5.in
BAABDCAADBCEAC
5.out
12
蓝桥杯青少组Python组别16级编程练习真题(第3套,共8套)