[프로그래머스/c++] 구명보트
성공 코드(내 코드) people을 오름차순으로 정렬한다. 보트에 최대 2명이 탑승 가능하므로 최솟값 + 최댓값을 더해본다. 더해준 값이 limit을 넘으면 2명 탑승이 안되므로 맨 뒤의 사람은 혼자 타야한다. 한명 밖에 타지 못하면 맨 뒷사람을 가리키는 인덱스를 줄여준다. 더해준 값이 limit을 넘지 않으면 2명 탑승이 가능하다. 즉 맨 앞사람을 가리키는 인덱스를 하나 증가시키고 맨 뒷사람을 가리키는 인덱스를 하나 감소시킨다. 이 과정을 맨 앞사람을 가리키는 인덱스가 맨 뒷사람을 가리키는 인덱스보다 작거나 같은 동안 반복해준다. #include #include #include using namespace std; int solution(vector people, int limit) { int answ..
알고리즘
2022. 9. 29. 09:36