⚡문제정보
그림이 있었으면 아주 쉽게 이해가 될텐데 x축 y축 소리 때문에 오히려 한번에 이해가 안되었던 문제
그러니까 저 배열안에 담긴 두 숫자는 x 축의 선분이라고 생각하면 되고
화살을 이런식으로 쏠 수 있는데
최소한으로 화살을 쏴서 모든 풍선을 터치고 싶다.라는 내용입니다.
🔍접근방법
끝 선분을 기준으로 오름차순 정렬해준 다음 비교해주면 끝
🔍나의 풀이
var findMinArrowShots = function(points) {
let answer = 1
points.sort((a,b) => {
return a[1] - b[1]
})
let pointer = points[0][1]
for(i=1 ; i<points.length; i++) {
if(pointer >= points[i][0]) continue
else {
pointer = points[i][1]
answer++
}
}
return answer
};
points[i]의 시작지점이 pointer와 값이 같거나 작은 경우엔 화살 한발로 처리할 수 있는 케이스니까
continue
그렇지 않은 경우엔 한발로 처리할 수 없으니 answer를 올려주고
pointer값을 갱신해줍니다.
그런 다음 answer값을 반환하면 끝
반응형
'leetcode' 카테고리의 다른 글
121 and 122. Best Time to Buy and Sell Stock II (0) | 2023.01.17 |
---|---|
561. Array Partition Javascript (0) | 2023.01.16 |
179. Largest Number Javascript (0) | 2023.01.16 |
334. Increasing Triplet Subsequenc (0) | 2023.01.16 |
438. Find All Anagrams in a String Javascript (0) | 2023.01.12 |