1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
// @Title: 和为 K 的子数组 (Subarray Sum Equals K)
// @Author: 15816537946@163.com
// @Date: 2022-03-19 15:39:47
// @Runtime: 44 ms
// @Memory: 7.5 MB
func subarraySum(nums []int, k int) int {
    var res, sum int 
    m := make(map[int]int)
    m[0]++
    for _, n := range nums {
        sum +=n
        res += m[sum-k]
        m[sum]++
    }
    return res
}