python - 运行时错误:如何在一个循环内缩短代码
问题描述
我正在解决一个问题我遇到运行时错误,如果有任何其他错误,我们可以缩短代码长度,请提出建议
T=int(input())
for i in range(T):
N= int(input())
P=[0]*N
C=list(map(int,input().split()))
H=list(map(int,input().split()))
for i in range(N):
if((i-C[i]>=0)and (i+C[i]<N)):
for j in range(i-C[i],i+C[i]+1):
P[j]=P[j]+1
elif((i-C[i]>=0)and (i+C[i]>N)):
for j in range(i-C[i],N):
P[j]=P[j]+1
elif((i+C[i]<N) and (i-C[i]<0)) :
for j in range(0,i+C[i]+1):
P[j]=P[j]+1
else:
for j in range(0,N):
P[j]=P[j]+1
H=sorted(H)
P=sorted(P)
if(H==P):
print("YES")
else:
print("NO")
解决方案
您对测试用例和数组使用相同的循环变量。在测试用例循环中使用任何其他变量,那么您将不会收到运行时错误。
推荐阅读
- http - HTTP2 最大窗口大小
- kubernetes - 谷歌云终端:认证后无法创建集群
- r - 如何在 R 中的 scale() 函数之后对每列的标准偏差进行子集化?
- javascript - 需要在随机图像/链接加载脚本的 Javascript 代码上添加登陆到 _blank
- vba - 在重复部分内容控件中向内容控件添加和设置文本
- swift - 保存具有字典的结构
- laravel - api响应错误时如何使所有脚本不运行?
- python - pywinauto print_control_identifiers() 不起作用
- c# - 正方体 OCR 失败 C#
- git - 无法克隆 git repo 并收到错误 ssh_askpass: exec(/usr/bin/ssh-askpass): No such file or directory 主机密钥验证失败