[ 자바스크립트(JavaScript) ] section05 - 3 - 연속 부분수열1
📍 section05 - 3 - 연속 부분수열1 N개의 수가 있을 때, 연속 부분 수열의 합이 target과 동일한 경우가 몇 번있는지 찾는 문제다. 이전까지는 이와 비슷한 유형의 문제를 풀어본 경험이 없기 때문에 어려웠다. N=m 인데, 만약, 현재 조건이 sumtarget이면, lt를 증가해서 sum= m) { sum -= arr[lt++]; if (sum === m) cnt++; } } return cnt; } // 강의 코드 let n = 8; let target = 6; let arr = [1, 2, 1, 3, 1, 1, 1, 2]; console.log(solution(n, target, arr)); function solution(n, target, arr) { let lt = (cnt = ..
2021. 8. 25.
[ 자바스크립트(JavaScript) ] section05 - 2 - 공통 원소 구하기
📍 section05 - 2 - 공통 원소 구하기 A, B 두 개의 집합이 주어질 때 공통 원소를 추출하여 오름차순으로 출력하는 문제다. 투 포인터를 사용해야 하는 이유는 N의 크기가 30,000인데, 이를 O(N^2)으로 풀게 되면 최악의 경우 1초당 9억번의 연산을 해야 하기 때문에 시간 초과가 난다. 따라서, O(N^2) 보다 작은 시간 복잡도로 계산해야 한다. 만약, N의 범위가 30,000보다 더 작다면 O(N^2)으로 bruteForce로도 풀 수 있다.bruteForce의 장점은 모든 경우의 수를 검사하기 때문에 정확한 결괏값이 나온다는 점이다. //O(N^2), bruteForce let n = 5; let arr1 = [1, 3, 9, 5, 2]; let m = 5; let arr2 = ..
2021. 8. 24.