Algorithm
[알고리즘] 프로그래머스 - 구명보트(탐욕법)
byeongoo
2020. 10. 26. 13:42
1. 문제
2. 문제 풀이
보트에는 2명 밖에 타지 못하므로 몸무게가 가장 많이 나가는 사람과 가장 적게 나가는 사람이 탈 경우 가장 많이 탈 수 있다. 사람들을 몸무게 순으로 정렬하고 남은 사람중 가장 많이 나가는 사람과 가장 적게 나가는 사람이 탈 경우 탈 수 있으면 같이 태우고, 같이 못타는 경우는 몸무게가 가장 많이 나가는 사람만 타게한다.
import java.util.Arrays;
class Solution {
public int solution(int[] people, int limit) {
int answer = 0;
Arrays.sort(people);
int s = 0;
int e = people.length-1;
while(s <= e){
if(people[s] + people[e] <= limit){
answer++;
s++;
e--;
} else{
answer++;
e--;
}
}
return answer;
}
}