文库 真题 蓝桥杯真题

蓝桥杯青少组Python组别12级编程练习真题(第1套,共8套)

蓝桥杯青少组12级真题 蓝桥杯Python真题 DOCX   5页   下载0   2024-02-24   浏览133   收藏0   点赞0   评分-   免费文档
温馨提示:当前文档最多只能预览 2 页,若文档总页数超出了 2 页,请下载原文档以浏览全部内容。
蓝桥杯青少组Python组别12级编程练习真题(第1套,共8套) 第1页
蓝桥杯青少组Python组别12级编程练习真题(第1套,共8套) 第2页
剩余3页未读, 下载浏览全部
蓝桥等考Python组别 十二 级 第一部分:选择题 1、Python L 12 (15分) 运行下面程序,输出的结果是( )。 lis = [1, 2, 3, 4, 5, 6, 7, 8] print( lis [ 0 : 4 ]) [1, 2, 3 , 4 ] [1, 2, 3 , 4 , 5 ] [2, 3 , 4, 5 , 6 ] [2, 3 , 4, 5] 正确答案: A 2 、Python L 12 ( 15 分) 运行下面程序,输出的结果是( )。 lis = [1, 3, 5, 7, 9] del lis [ 2 ] print( lis ) [ 1, 3 , 5 , 7 ] [1, 3, 7 , 9 ] [1, 3, 5 , 9] [1, 9] 正确答案:B 3、Python L 12 (20分) 运行 下面 程序,输出的结果是 ( )。 lis = [[1, 2], [3, 4]] print( lis [ 0 ][1]) 1 4 2 3 正确答案: 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 输出样例: 4 参考程序: s = input() a = s.split(' ') lis = [int(i) for i in a] print(sum(lis[ : : 2])) 测试数据: 1.in 1 2 3 4 1.out 4 2.in 1 2 3 2 3 6 9 2.out 16 3.in 1 2 4 7 4 3.out 9 4.in 5 3 8 2 4.out 13 5.in 5 3 3 8 9 22 14 20 5.out 31 5 、Python L 1 2 山洞寻宝 ( 3 0分) 题目名称: 山洞寻宝 题目描述: 有n个宽度为1、并排的山洞,每个山洞里都藏着金币。 山洞前有一扇宽度为3的石门,被石门挡住的山洞不能进入。你有一次施展魔法的机会,可以让石门平移到任意连续的3个山洞前。石门只能平移一次,平移前不能进入山洞。 已知每个洞里藏着的金币数量,问你最多能拿到多少个金币。 例如,有5个山洞,每个山洞的金币数量是7,2,12,5,3。 你 有3 种 拿 金币的方法: 1. 让石门 移 动到最 左 边,拿右边两个山洞的金币,共 8个; 2. 让石门 移 动到 正中间 ,拿 两头 山洞的金币,共 10个; 3. 让石门 移 动到最右边,拿 左 边两个山洞的金币,共 9个; 你最多能拿到 10个金币 。 输入: 第一行一个正整数,为 山洞数量n(4<=n<=20); 第二行,按字符串形式输入 n 个正整数(大小在 1~20范围内 ),相邻两个正整数用一个空格分隔。按从左到右的顺序,每个正整数表示 一个山洞里藏着的金币数量 。 提示: s = input() #输入一个字符串,赋值给s a = s.split(' ') # 将字符串s按空格拆分,保存到列表 a中 lis = [int(i) for i in a] # 将列表a的元素转换成整数,保存到列表lis 中 输出: 一个整数,为你 最多 能拿到金币的数量。 输入样例 1 : 5 7 2 12 5 3 输出样例 1 : 10 输入样例 2 : 7 4 18 2 10 7 16 1 输出样例 2 : 39 参考程序 1 : n = int(input()) s = input() a = s.split(' ') lis = [int(i) for i in a] ans = 0 for i in range(n - 3): #遍历石门可能的位置,i是石门左端的位置坐标 ans = max(ans, sum(lis) - sum(lis[i : i + 3])) #进不去的山洞有3个,求和,再用总数减,打擂台求最大 print(ans) 参考程序 2 (校验用) : n = int(input()) s = input() a = s.split(' ') lis = [int(i) for i in a] lis.insert(0, 0) Pre = [0] * (n + 1) #Pre[i]是列表前i项和 Coin = [0] * (n + 1) #Coin[i]是以i结尾的连续3个山洞的金币数量 for i in range(1, n + 1): Pre[i] = Pre[i - 1] + lis[i] for i in range(3, n + 1): Coin[i] = Pre[i] - Pre[i - 3] print(sum(lis) - min(Coin[3:])) 测试数据: 1.in 5 7 2 12 5 3 1.out 10 2.in 7 4 18 2 10 7 16 1 2.out 39 3.in 8 4 3 15 5 19 5 2 15 3.out 46 4.in 10 2 20 4 7 3 8 10 5 14 14 4.out 73 5.in 12 3 11 20 16 14 7 10 1 15 3 10 13 5.out 105
蓝桥杯青少组Python组别12级编程练习真题(第1套,共8套)
下载提示

下载及版权说明:6547网文库内容来自网络及各平台公开内容(属于用户上传,不保证正确性,只做参考),旨在帮助同学们学习少儿编程相关知识及内容,仅限内部学习及使用,以分享为主,下载本文档之后请合法使用相关、真题、素材、课件、教程等内容,若内容存在侵权,请进行 举报 及查看 免责声明