执行下面Python代码后,输出的结果是?( )
my_list = [1, 2, [3, 4]] my_list[2].extend([5, 6]) print(my_list)
执行下面Python代码后,会发生什么?( )
my_tuple = (1, 2, (3, 4)) my_tuple[2] = (5, 6)
执行下面Python代码后,输出的结果是?( )
try:
result = 10 / int('a')
except ValueError:
print("10", end="#")
else:
print("20", end="#")
finally:
print("30", end="#")执行下面Python代码后,输出的结果是?( )
def func(n): return len([num for num in range(n) if num % 2 == 0]) print(func(20))
执行下面Python代码后,输出的结果是?( )
def func(*args):
return ''.join(args)
print(func('Hello', 'World'))执行下面Python代码后,输出的结果是?( )
def func(lst): lst.append(10) return lst lstA = [1,2,3] func(lstA) print(lstA,func(lstA))
执行下面Python代码后,输出的结果是?( )
def tpADD(tpl): tpl = tpl +(5,6) return tpl tp = (1,2,3) tpADD(tp) print(tp,tpADD(tp))
执行下面Python代码后,输出的结果是?( )
x = 5 def foo(): def bar(): global x x = 10 bar() print(x, end="#") foo() print(x, end="#")
执行下面Python代码后,输出的结果是?( )
def func(d):
d['a'] = 5
c = {'a': 1, 'b': 2}
func(c)
print(c)以下Python代码实现的排序算法的时间复杂度是?( )
def func_sort(arr): n = len(arr) for i in range(n - 1): min_idx = i for j in range(i+1, n): if arr[j] < arr[min_idx]: min_idx = j arr[i], arr[min_idx] = arr[min_idx], arr[i]
执行下面Python代码后,输出的结果是?( )
tuples = [(1, 'apple'), (2, 'banana'), (0, 'cherry')] sorted_tuples = sorted(tuples, key=lambda x: x[1]) print(sorted_tuples)
假设你正在爬楼梯,每次可以爬1阶或2阶。给定楼梯的阶数 n ,计算有多少种不同的方法可以爬到楼顶。 以下Python代码的横线处应该填写?( )
def climbStairs(n): if n == 1: return 1 if n == 2: return 2 # 初始化前两阶楼梯的数据 dp = [0] * (n + 1) dp[1] = 1 dp[2] = 2 # 从第3阶楼梯开始,计算每一阶楼梯的爬法数量 for i in range(3, n + 1): __________ return dp[n]
文件numbers.txt的内容如下:
5 12 7 15 3 20 8
执行下面Python代码后,输出的结果是?( )
def func(file_path, threshold): lst = [] with open(file_path) as file: for line in file: number = int(line.strip()) if number > threshold: lst.append(number) return lst file_path = 'numbers.txt' threshold = 12 selected_numbers = func(file_path, threshold) print(selected_numbers)
下面这段程序的时间复杂度为线性阶 O(n)。( )
def func(n): i = 0 while i ** 2 < n: i += 1
执行下面Python代码后,输出的结果为(0, 0)。
lst = [(x, x**2) for x in range(-5, 6)] a = min(lst, key=lambda x: abs(x[1])) print(a)
试题名称:黑白方块
时间限制:1.0 s
内存限制:512.0 MB
3.1.1 题面描述
小杨有一个 n 行 m 列的网格图,其中每个格子要么是白色,要么是黑色。
小杨想知道网格图中是否存在一个满足如下条件的子矩形:
子矩形由 4 行 4 列组成;
子矩形的第 1 行 和第 4 行只包含白色格子;
对于子矩形的第 行 2 和第 3 行,只有第 1 个和第 4 个格子是白色的,其余格子都是黑色的;
请你编写python程序帮助小杨判断。
3.1.2 输入格式
第一行包含一个正整数 t,代表测试用例组数。
接下来是 t 组测试用例。对于每组测试用例,一共 n+1 行。
第一行包含两个正整数 n,m 含义如题面所示。
之后 n 行,每行一个长度为 m 的 01 串,代表网格图第 i 行格子的颜色,如果为 0 ,则对应格子为白色,否则为黑色。
3.1.3 输出格式
对于每组测试用例,如果存在,输出 Yes,否则输出 No。
3.1.4 样例1
3 1 4 0110 5 5 00000 01100 01100 00001 01100 5 5 00000 01100 01110 00001 01100
No Yes No
满足条件的子矩形形如:
0000 0110 0110 0000
对于全部数据,保证有
。
试题名称:区间排序
时间限制:1.0 s
内存限制:512.0 MB
3.2.1 题面描述
小杨有一个包含 n 个正整数的序列 a。
小杨计划对序列进行多次升序排序,每次升序排序小杨会选择一个区间 [l,r]( l<=r)并对区间内所有数字,即al,al+1,....al+r进行升序排序。每次升序排序会在上一次升序排序的结果上进行。
小杨想请你计算出多次升序排序后的序列。
3.2.2 输入格式
第一行包含一个正整数 n,含义如题面所示。
第二行包含 n 个正整数a1,a2,....an ,代表序列。
第三行包含一个正整数 q,代表排序次数。
之后 q 行,每行包含两个正整数 li,ri ,代表将区间 [li,ri ]内所有数字进行升序排序。 ,
3.2.3 输出格式
输出一行包含 n 个正整数,代表多次升序排序后的序列。
3.2.4 样例1
5 3 4 5 2 1 3 4 5 3 4 1 3
1 3 4 5 2
第一次升序排序后,序列为 [3,4,5,1,2];
第二次升序排序后,序列为 [3,4,1,5,2];
第三次升序排序后,序列为[1,3,4,5,2] ;