Programmers 42885 구명보트
in Algorithm
문제 링크 : https://programmers.co.kr/learn/courses/30/lessons/42885
나의 풀이
무게가 가장 많이 나가는 사람과 무게가 적게 나가는 사람이 구명보트에 최대한 많이 탈 수 있도록 한다.
풀이 코드 : 42885 구명보트
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int solution(vector<int> people, int limit) {
int answer = 0;
sort(people.begin(), people.end());
int left = 0, right = people.size()-1;
int sum;
for(int i=right;i>=left;i--){
sum = people[i];
while(sum + people[left] <= limit){
sum += people[left];
left++;
}
answer++;
}
return answer;
}