为什么在以下代码中出现NZEC错误?

时间:2019-06-30 20:07:20

标签: python-3.x

这是我在codechef上遇到NZEC错误但在本地IDE上执行得很好的代码。

def kadane(arr,n):
   curr_sum=0
   max_so_far =0
   for i in range(n):
       curr_sum=curr_sum+arr[i]
       if(max_so_far<curr_sum):
           max_so_far=curr_sum
       if(curr_sum<0):
           curr_sum=0
   return max_so_far
def maxSub(arr,n,k):
   kadane_sum=kadane(arr,n)
   if (k==1):
      return kadane_sum
   curr_prefix,curr_suffix,max_prefix,max_suffix=0,0,0,0
   for i in range(n):
       curr_prefix +=arr[i]
       max_prefix=max(curr_prefix,max_prefix)
   total=curr_prefix
   for i in range(n-1,-1,-1):
       curr_suffix=curr_suffix+arr[i]
       max_suffix=max(curr_suffix,max_suffix)
   if total<0:
       ans=max(max_suffix+max_suffix,kadane_sum)
   else:
       ans=max(max_suffix+max_prefix+(total*(k-2)),kadane_sum)
   return ans

我认为错误在于输入时程序启动,因为逻辑是可靠的。

for _ in range(int(input())):
    n,k=map(int,input().split())
    l=list(map(int,input().split()))
    print(maxSub(l,n,k))

0 个答案:

没有答案