
function solution(people, limit) {
let answer = 0
people.sort((a, b) => b - a)
console.log("people: ", people)
for (let i = 0, j = people.length - 1; i <= j; i++, answer++) {
if (people[i] + people[j] <= limit) j--
}
console.log(answer)
return answer
}
// solution([70, 50, 80, 50], 100)
// solution([70, 80, 50], 100)
solution([70, 80, 40, 43, 45, 50, 50, 96], 100)
limit보다 크면 가장 무거운 무게를 지나간다(버린다) 동시에 boat갯수 추가limit 이하라면 무거운무게는 가벼운쪽으로, 가벼운무게는 무거운쪽으로 이동해 합을 구하면서 boat수를 증가시킨다.queue을 생각해서 무게를 queue에 넣고, limit이상이 되면 dequeue하려고 했다.
하지만 몇번째까지 dequeue해야 하는지 설정하는데에서 어려움을 겪었다.
그리고 가장 가벼운무게 + 가장 무거운 무게가 가장 많이 탈 수 있는 방법이라는 것을 생각해내지 못했다.