How to check if a list contains a contiguous subarray having zero-sum in Python

1 Answer

0 votes
def hasZeroSumSubarray(lst):
    size = len(lst)
     
    for i in range(size):
        sum = lst[i]
        startIndex = i
        if sum == 0:
            return True
        for j in range(i + 1, size):
            sum += lst[j]
            endIndex = j
            if sum == 0:
                print("index from:", startIndex, "to:", endIndex);
                return True
    return False

lst = [8, 32, 4, -5, 1, 9]
    
if hasZeroSumSubarray(lst):
    print("Found subarray with 0 sum")
else:
    print("Not found subarray with 0 sum")



'''
run:

index from: 2 to: 4
Found subarray with 0 sum

'''

 



answered Sep 8, 2023 by avibootz
...