From c1eb79493521568e8a0b1ef67321105e6fd9d63a Mon Sep 17 00:00:00 2001 From: unknown Date: Sat, 28 Jan 2023 14:48:06 +0100 Subject: [PATCH] Create 0560-subarray-sum-equals-k.kt --- kotlin/0560-subarray-sum-equals-k.kt | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 kotlin/0560-subarray-sum-equals-k.kt diff --git a/kotlin/0560-subarray-sum-equals-k.kt b/kotlin/0560-subarray-sum-equals-k.kt new file mode 100644 index 000000000..5a9982d2b --- /dev/null +++ b/kotlin/0560-subarray-sum-equals-k.kt @@ -0,0 +1,14 @@ +class Solution { + fun subarraySum(nums: IntArray, k: Int): Int { + val hm = hashMapOf(0 to 1) + var res = 0 + var sum = 0 + nums.forEach { + sum += it + val prefix = sum - k + res += hm.getOrDefault(prefix, 0) + hm[sum] = hm.getOrDefault(sum, 0) + 1 + } + return res + } +}