#
Subarray Zerosum Problem
#
Subarray Zero Sum problem
Bài toán này cho một mảng arr
các số nguyên. Yêu cầu kiểm tra liệu arr
có tồn tại mảng con nào mà nó có tổng của các phần tử là 0.
#
Lời giải:
func hasSubArrZeroSum(arr []int) bool {
preSum := make(map[int]bool)
preSum[0] = true
sum := 0
for _, v := range arr {
sum += v
if _, isExisted := preSum[sum]; isExisted {
return true
}
preSum[sum] = true
}
return false
}
func main() {
arr := []int{3, 4, -7, 3, 1, 3, 1, -4, -2, -2}
fmt.Printf("Result: %v", hasSubArrZeroSum(arr))
}