알고리즘 문제 풀기(프로그래머스)
https://github.com/hoinlee-moi/Algorithm
JS기본문법 다시 공부
https://github.com/hoinlee-moi/ModernJS
React 강의 듣기
https://github.com/hoinlee-moi/React_prac
알고리즘
구명보트 - https://school.programmers.co.kr/learn/courses/30/lessons/42885
function solution(people, limit) {
let answer = 0;
people.sort((a,b)=>b-a)
for(let i=0; i<=people.length-1;i++){
if(people[i]+people[people.length-1]<=limit){
people.pop()
}
answer++
}
return answer;
}
limit
에 가장 가까운 큰 값을 먼저 뺀뒤 남은 숫자가 가장 작은 값에 들어갈 수 있는지를 체크한다sort
로 먼저 내림차순을 한 뒤 반복문을 돌아 가장 큰값 (i
번째)와 배열의 마지막값을 합해 limit
에 걸리는지 체크하고 문제 없다면 pop()
을 이용해 맨 마지막 값을 빼준다pop()
을 통해 아예 제거 한다.