-
[프로그래머스] 탐욕 알고리즘 - 구명보트알고리즘 공부/문제 풀이 2020. 8. 18. 15:19
static int solution(int[] people, int limit) { int answer = 0; Arrays.sort(people); int right=people.length-1,left=0; while(left<=right) { if(people[right]+people[left]<=limit) { right--; left++; answer++; } else { right--; answer++; } } return answer; }
풀이의 구현은 어렵지 않았으나, 사고가 쉽지 않았다..
구명 보트의 인원 제한이 2명인 것을 이용하여
남은 사람 중 가장 무거운 사람과 가장 가벼운 사람이 limit를 넘지 않는다면 함께 태워 보내고,
limit를 넘는다면 무거운 사람만 따로 태워 보낸다.
'알고리즘 공부 > 문제 풀이' 카테고리의 다른 글
[프로그래머스] 탐욕 알고리즘 - 단속카메라 (1) 2020.08.18 [프로그래머스] 탐욕 알고리즘 - 섬 연결하기 (1) 2020.08.18 [프로그래머스] 탐욕 알고리즘 - 조이스틱 (1) 2020.08.18 [프로그래머스] 탐욕 알고리즘 - 큰 수 만들기 (2) 2020.08.17 [프로그래머스] 탐욕 알고리즘 - 체육복 (2) 2020.08.17