试卷总分:100分
选择题 5题 10分
多选题 5题 20分
编程题 4题 70分
执行以下代码后,输出结果是?
a = 18 % 5 b = 18 // 5 print(a + b)
s = 'redarmy' print(s[1:4])
lst = [3,6,9] lst.append(12) print(len(lst))
执行以下代码后,count 的最终结果是?
count = 0 for i in range(2): for j in range(3): count += 1 print(count)
以下代码用于定义函数计算两数之和,存在错误的行是?
行 1: def add_num (x, y): 行 2: res = x + y 行 3: return res 行 4: print (add_num (3, 5))
关于这段代码的运行逻辑,以下说法正确的有哪些?
r = 100 def send(num): num = num - 30 return num remaining = send(r)
关于 Python 列表与字符串的综合操作,说法正确的有?
lst = ['红', '军', '长', '征'] s = '支前为民'
红军战地医院收到后方支援的一批药品,需要分发给各个前线伤员小队,每支伤员小队统一分配12 盒药品,若分发后有剩余的药品,每剩余 1 盒就单独分给 1 名重伤员,医生需要精准统计分配结果,确保药品全部分配到伤员手中,不积压、不浪费。
编程实现:给定药品总盒数,求能分到药品的小队数和额外能分到药品的重伤员数。
一行,一个整数 n (药品总盒数)。
一行,两个整数,依次为小队数、重伤员数,空格分隔。
0≤n≤500
145
12 1
60
5 0
9
0 9
陕甘宁抗日根据地后勤组需要统计各村上交的粮食物资,用于统一调配给前线和后方群众。已知:
各村上交的粮食分为小米袋和玉米袋两类,每袋小米重 30 斤,每袋玉米重 20 斤;
后勤员只记录了粮食的总袋数(小米袋 + 玉米袋)和总重量,未单独记录小米、玉米的袋数。
编程实现:请编写程序计算出小米袋和玉米袋的具体数量,确保粮食精准分配,既满足前线战士的主食需求,也保障后方群众的口粮供应。
输入两个整数(空格分隔),依次为:粮食总袋数、粮食总重量。
输出两个整数(空格分隔),依次为:小米袋数量、玉米袋数量。
1≤总袋数≤100;20 × 总袋数≤总重量≤30 × 总袋数。
25 650
15 10
18 460
10 8
10 200
0 10
晋察冀抗日根据地后勤队需将药品、粮食等紧急物资运往前线战场,规划了多条从根据地到前线的运输路线。由于战时路况和敌情不同,每条路线的实际运输距离需结合路况调整:
路线编号为奇数:因有敌军零散袭扰,需绕开危险区域,实际距离在基础距离上增加 5 公里;
路线编号为偶数:路况良好且有民兵护送,实际距离等于基础距离。
编程实现:请编写程序计算每条路线的实际运输距离,并找出最短的实际距离,确保物资以最快、最安全的方式运往前线,最大化保障前线补给效率。
第一行输入一个整数 n,表示运输路线的数量(2≤n≤10);
第二行输入 n 个整数(空格分隔),依次为路线 1、路线 2… 路线 n 的基础距离(单位:公里,10≤基础距离≤50);
第一行:n 个整数(空格分隔),依次为每条路线的实际运输距离;
第二行:一个整数,表示所有路线中最短的实际运输距离。
路线数量 n:2≤n≤10;
基础距离:10≤数值≤50(输入数据保证为合法正整数)
3
18 25 30
23 25 35
23
4
15 20 22 19
20 20 27 19
19
5
12 19 28 33 40
17 19 33 33 45
17
晋察冀根据地后勤部门需将有限的救灾小米分配给多个受灾村庄,需按量化规则计算每个村庄的实际分配量,并筛选出「人均实际分配量最高」的最优村庄(即资源利用效率最高的村庄),规则如下:
核心计算规则:
1.基础参数定义:
村庄数量:m(2≤m≤5);
总小米数量:S(斤,1000≤S≤5000,且能被所有村庄受灾总人数整除);
每个村庄含 3 个固定参数:受灾人数(P)、优先级(L:1/2/3 级,1 级最高)、运输损耗率(R:仅 5/10/15%)。
2.分步计算逻辑:
① 人均基础量 = 总小米 S ÷ 所有村庄受灾总人数(因 S 可整除总人数,结果为整数);
② 单村庄基础分配量 = 该村庄受灾人数 × 人均基础量;
③ 优先级调整(结果为整数):
1 级:调整后量 = 基础分配量 × 1.2;
2 级:调整后量 = 基础分配量 × 1.0(不变);
3 级:调整后量 = 基础分配量 × 0.8;
④ 运输损耗调整(实际分配量,结果为整数):
损耗率 5%:实际量 = 调整后量 × 95%;
损耗率 10%:实际量 = 调整后量 × 90%;
损耗率 15%:实际量 = 调整后量 × 85%。
3.最优村庄判定规则:
人均实际量 = 该村庄实际分配量 ÷ 该村庄受灾人数;
最优村庄 = 人均实际量最大的村庄;若多个村庄人均值并列最大,取编号最小的村庄(村庄编号从 1 开始)。
第 1 行:整数 m(村庄数量,2≤m≤5);
第 2 行:整数 S(总小米数量,1000≤S≤5000);
第 3 行:m 个整数(空格分隔),依次为村庄 1~m 的受灾人数 P(50≤P≤500);
第 4 行:m 个整数(空格分隔),依次为村庄 1~m 的优先级 L(仅 1/2/3);
第 5 行:m 个整数(空格分隔),依次为村庄 1~m 的运输损耗率 R(仅 5/10/15)。
第一行:m 个整数(空格分隔),依次为村庄 1~m 的实际分配量;
第二行:1 个整数,最优村庄的编号;
第三行:1 个浮点数,该最优村庄的人均实际量(保留 2 位小数)。
所有输入参数均为合法整数,无空值 / 非法值;
S 能被总受灾人数整除,所有计算步骤结果均为整数(无需额外取整);
损耗率仅为 5/10/15,优先级仅为 1/2/3,无其他值。
3600
200 300 100
1 2 3
10 10 10
1296 1620 432
1
6.48
2
2000
100 100
2 2
5 15
950 850
9.50
4000
100 100 100 100
1 1 2 3
10 10 10 10
1080 1080 900 720
10.80