❓❓❓ 연속 부분수열 2 : Two Pointers

frenchkebab·2021년 8월 22일
0
post-thumbnail


Solution 풀이

이건 뭐... 그냥 아이디어외워버려야 겠다.
시간투자를 많이 했는데도 풀이를 보고나니 힘이 확 풀렸다 ㅋㅋ

function solution(m, arr) {
  let answer = 0,
    sum = 0,
    l = 0;
  for (let r = 0; r < arr.length; r++) {
    sum += arr[r];
    while (sum > m) {
      sum -= arr[l++];
    }
    answer += r - l + 1;
  }
  return answer;
}

let a = [1, 3, 1, 2, 3];
console.log(solution(5, a));

배운 점

answer1씩 증가해야 한다는 고정관념(?)을 갖고있었던 것 같다....
r - l + 1 이렇게 다 더해준다는 생각은 아예 못했다...

profile
Blockchain Dev Journey

0개의 댓글