2023-12-02青少年软件编程(Python语言)等级考试试卷(四级)解析
一、单选题(共25题,共50分)
1.下列有关分治算法思想的描述不正确的是?(B)
A. 将问题分解成的子问题具有相同的模式。
B. 将问题分解出的各个子问题相互之间有公共子问题。
C. 当问题足够小时,可以直接求解。
D. 可以将子问题的求解结果合并成原问题的解。
将问题分解出的各个子问题相互之间没有公共子问题。
2.斐波那契数列前n项是1,1,2,3,5,8,13......
补全下面程序代码,求第n项斐波那契数列的值。(D)
def fib(n):
if ______:
return 1
else:
return fib(n-1) + fib(n-2)
A. n == 2
B. n < 2
C. n == 3
D. n < 3
用分治思想,递归求解。
3.用分治法求两个数的最大公约数,代码和运行结果如下,请选择合适的代码完成程序?(B)
def fun(m, n):
if m % n == 0:
return n