Algorithm(JavaScript)
[인프런] 연속 부분 수열2
류정식
2021. 7. 7. 16:10
0. 제목
- 연속 부분 수열2
1. 문제
2. 풀이 1차
- 더블포인터 원리 이용해서
- 합이 5이하인수는 그 p1, p2사이의 부분수열 갯수를 더한다.
3. 코드
function solution(m, arr) {
let answer = 0
var n = arr.length
var p1 = 0;
var p2 = 0;
var sum = 0;
for(p1=0; p1<n; p1++) {
sum += arr[p1]
while (sum >m) {
sum -= arr[p2]
p2++;
}
answer += p1 - p2 + 1;
}
return answer;
}
let a = [1, 3, 1, 2, 3];
console.log(solution(5, a));