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;
}
}
'Algorithm' 카테고리의 다른 글
[알고리즘] 2020 카카오 인턴십 - 키패드 누르기 (0) | 2021.01.11 |
---|---|
[알고리즘] 프로그래머스 - 섬 연결하기(탐욕법) (0) | 2020.10.26 |
[알고리즘] 프로그래머스 - 체육복 (탐욕법) (0) | 2020.10.10 |
[알고리즘] 프로그래머스 - 등굣길 (동적 계획법) (0) | 2020.10.07 |
[알고리즘] 프로그래머스 - 정수 삼각형 (동적 계획법) (0) | 2020.10.06 |