试卷总分:120分
选择题 5题 10分
多选题 5题 10分
编程题 4题 100分
x = 15 y = 4 print(x % y, x (y - 2))
word = 'coding' print(word[1:5], word[-1])
count = 0 for i in range(1, 4): for j in range(3): if i > j: count += 1 print(count)
def process(lst): lst.extend([4]) lst = [7, 8] return lst data = [1, 2] res = process(data) print(data, res)
# 行1:def sum_positives(lst): # 行2: res = 0 # 行3: for num in lst: # 行4: if num <= 0: # 行5: return res # 行6: res += num # 行7: return res # 行8:print(sum_positives([2, -1, 3]))
def add_item(k, v, d): d[k] = v return d d1 = add_item('a', 1, {}) d2 = add_item('b', 2, {'x': 10}) d3 = add_item('c', 3, {})
data = {"team": "A", "members": ["Alice", "Bob"]} backup = data.copy() backup["team"] = "B" backup["members"].append("Charlie") data.update({"score": 100})
with open("data.txt", "a", encoding="utf-8") as f: f.write("New Line\n") with open("data.txt", "r", encoding="utf-8") as f: f.seek(0) lines = f.readlines() f.seek(5) char = f.read(1)
根据地医院正在准备前线的战地急救包。
每个标准的急救包需要配备 1 卷医用绷带和 2 瓶碘伏。
医护人员需要根据现有的绷带和碘伏库存,快速计算出最多能组装出多少个完整的急救包。
【输入格式】 一行,两个整数 a(绷带卷数)b(碘伏瓶数),空格分隔(0 <= a, b <= 1000)。
【输出格式】 一行,一个整数,表示能配齐的完整急救包数量。
【示例】
输入
30 55
输出
27
40 100
40
0 10
0
为了快速将战士运送到前线,后勤部需要调配运兵车队。现有大卡车和小卡车两种型号:
- 每辆大卡车可运送 15 名战士;
- 每辆小卡车可运送 5 名战士。
已知前线要求本次调派的总车辆数正好为 s,且必须恰好装载满 p 名战士(不允许超载或有空座)。请计算所有符合要求的大卡车与小卡车数量的调配方案。
【输入格式】 一行,两个整数 s(车辆总数,1 <= s <= 100)和 p(战士总数,1 <= p <= 1500),用空格分隔。
【输出格式】 如果存在合法方案:每种方案占一行,输出 X Y(X = 大卡车数量,Y = 小卡车数量,用空格分隔)。若有多组解,按 X 的升序排列输出。 如果不存在合法方案:输出 -1。
10 110
6 4
10 102
-1
4 60
4 0
地下情报员截获了一串小写字母组成的密文,需要按照新指定的规则进行解密。(注意:输入保证步数 step 一定不会大于明文长度,无需考虑越界。)
#### 解密规则步骤1. 对密文字符串执行循环左移 step 步(即将最前面的 step 个字符剪切并拼接到最后面);2. 将左移后的字符串按长度 k 进行分段(最后一段若不足 k 个字符则保留原样);3. 仅对偶数位置的分段(分段从 1 开始计数,即第 2、4、6、... 段)执行字符串反转操作;4. 将处理后的全部分段重新拼接为一个新字符串。
【输入格式】第一行:密文字符串(5 <= 长度 <= 20,纯小写字母)。第二行:整数 step(1 <= step <= 10)和 k(2 <= k <= 密文长度 - 1),用空格分隔。
【输出格式】一行,解密后的最终字符串。
abcdefghij 3 3
defihgjabc
helloworld 2 4
llowdlrohe
python 6 2
pyhton
游击小队夜袭敌人军火库后需要撤退至安全区,撤退路线被划分为 n * n 的二维网格。
网格中包含不同的地形元素,移动时代价不同:- 0 = 安全平地(可通行,基础代价为 1);- 1 = 探照灯封锁区(不可通行,遇到必须绕路);- 2 = 泥泞沼泽(可通行,行进艰难,总代价为 3);- 3 = 地下暗道入口(可通行,非常隐蔽,总代价为 0)。
游击小队只能上下左右移动,不能越界,且绝不能重复经过同一个格子。
起点固定在左上角 (0, 0),终点固定在右下角 (n - 1, n - 1)。起点和终点本身的地形代价也需要计算在内。
请统计在给定的网格中,共有多少条可行的突围路线?并求出所有路线中代价最小的突围代价是多少?
【输入格式】第一行:网格边长 n(3 <= n <= 8)。接下来 n 行:每行包含 n 个整数(仅限 0, 1, 2, 3),用空格隔开。
【输出格式】第一行:可行路径总数(若无法到达终点,输出 0)。第二行:最小路径代价(若无法到达终点,输出 -1)。
【提示】注:本题大地图测试数据中含有大量障碍物,有效路径数量受限,标准 DFS 算法不会产生运行超时现象。
3 0 2 0 0 1 3 0 0 0
2 5
3 0 1 0 1 1 0 0 0 0
0 -1
4 0 1 0 0 0 1 0 1 0 2 0 1 0 0 0 0
2 7