Given an array of integers nums
and an integer k
, return the total number of continuous subarrays whose sum equals to k
.
1 nums.length 2 *
-1000 nums[i] 1000
- k
음수를 고려해야 해서 따로 예외 처리하는 방법이 없더라구요... 그래서 start
인덱스를 하나하나 찾아서 답이 되는 모든 경우의 수를 더해주는 방식으로 접근했어요.
class Solution {
public int subarraySum(int[] nums, int k) {
int answer = 0;
for(int offset = 0; offset < nums.length; ++offset){
int value = 0;
for(int start = offset; start < nums.length; ++start){
value += nums[start];
if(value == k){
++answer;
}
}
}
return answer;
}
}