python - 我收到运行时错误 NZEC 请告诉我是什么问题
问题描述
我做了一个程序来找到矩阵路径的最大总和。您可以向下、向右或对角线,从 0,0 开始直到其右下角元素。
for z in range(int(input())):
n,m = input().split(" ")
n = int(n)
m = int(m)
arr = []
ans = []
for i in range(n):
s = list(input().split(" "))
s = list(map(int,s))
arr.append(s)
ans.append([0 for y in range(m)])
for i in range(0,n,1):
for j in range(0,m,1):
if i==0 and j==0:
ans[i][j] = arr[i][j]
elif i==0 and j!=0:
ans[i][j] = ans[i][j-1] + arr[i][j]
elif j==0 and i!=0:
ans[i][j] = ans[i-1][j] + arr[i][j]
else:
ans[i][j] = max(ans[i-1][j],ans[i-1][j-1],ans[i][j-1]) + arr[i][j]
print(ans[n-1][m-1])
解决方案
代码在 python 中,因此它应该有适当的缩进,否则你会得到一个错误。
出现 NZEC 错误的可能原因:
无限递归——或者如果你的堆栈内存用完了。
确保您的输入和输出与测试用例完全相同。建议使用将您的输出与指定输出完全匹配的计算机代码来测试您的程序。
出现此错误的另一个常见原因是您犯了基本的编程错误,例如除以 0。
检查变量的值,它们可能容易受到整数流的影响。
直接尝试计算 20 以上的阶乘,如果你是 - 找到另一种方法来做到这一点。
- NZEC 错误是运行时错误,主要发生在访问负数组索引时。
有关更多信息,您可以在此处查看
检查边缘情况,您可能正在访问具有负索引的数组。
我希望它有所帮助。
推荐阅读
- php - 使用电子邮件通道时,如何使用通知程序将通知作为 HTML 内容发送?
- arrays - 当json值包含空格时将jq输出分配给bash数组
- angular - Primeng p-toast 显示在内部 div
- php - meta_query 过滤器:获取三个条件中的两个匹配的帖子
- c++ - 带有另一个构造函数的默认结构构造
- reactjs - 在 Mikrotik 路由器板上本地部署 NextJS
- javascript - 如何像在 Java 中一样在 JS 中的构造函数之外设置属性?
- javascript - 如何在我的班级名称上使用 querySelectorAll
- java - Using Lombok @Data annotation above class with field names like "iPhone" causing problems
- javascript - Vue 应用程序中的嵌套 v-for 使用之前的状态