본문 바로가기

Problem Solving/프로그래머스

구명보트

#include <bits/stdc++.h>

using namespace std;

int solution(vector<int> people, int limit) {
    int answer = 0, index = 0;
    sort(people.begin(), people.end());
    int size = people.size();
    
    while(!people.empty() && index <= (size-1)/2) {
        if(&people[index] == &(people.back())) {
            answer++; break;
        }
        else if(people[index] + people.back() <= limit) {
            index++;
            answer++;
            if(&people[index] == &(people.back())) break;
            people.pop_back();
        } else {
            people.pop_back();
            answer++;
        }
    }
    return answer;
}

'Problem Solving > 프로그래머스' 카테고리의 다른 글

[프로그래머스/C++] 2016년  (0) 2022.01.16
크레인 인형뽑기  (0) 2022.01.16
실패율  (0) 2022.01.16
문자열 다루기 기본  (0) 2022.01.16
문자열 내 p와 y의 개수  (0) 2022.01.16