执行以下代码后,输出结果为 2 。 n, m = 3, 4 grid = [[1, 3, 2, 4], [5, 7, 6, 8], [9, 0, 1, 2]] dx = [-1, -1, -1, 0, 0, 1, 1, 1] dy = [-1, 0, 1, -1, 1, -1, 0, 1] count = 0 for i in range(n): for j in range(m): lower_neighbors = 0 for k in range(8): x, y = i + dx[k], j + dy[k] if 0 = 5: count += 1 print(count)
A:正确
B:错误
正确答案:错误
答案解析
首先确定二维列表grid的行数n和列数m,遍历每个元素grid[i][j]。通过dx和dy定义8个方向的坐标偏移,对每个位置(i, j)检查其8个相邻位置(x, y)是否在有效范围内。若相邻位置的值小于当前位置的值,则计为一个较小邻居。统计当前元素周围较小邻居的数量。当较小邻居的数量大于等于5时,全局计数器count加1。循环结束后输出count的值。整个过程基于嵌套循环与条件判断实现邻域比较和计数逻辑。
试卷来源:202606 CCF-GESP编程能力等级认证Python四级真题