No Rules Rules

입국심사 (feat. 프로그래머스, 43238번) 본문

생활/코테

입국심사 (feat. 프로그래머스, 43238번)

개발하는 완두콩 2022. 7. 23. 20:46
728x90
반응형

입국심사
https://programmers.co.kr/learn/courses/30/lessons/43238

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

반응형
// woohyeon.kim
#include <vector>
#include <algorithm>

using namespace std;
 
long long solution(int n, vector<int> times) {
    sort(times.begin(), times.end());
    long long answer = 0;
    long long min_time = 1;
    long long max_time = times.back() * static_cast<long long>(n);
    while (min_time <= max_time)
    {
        long long human = 0;
        auto mid_time = ((max_time + min_time) / 2);
        for (const auto& t : times)
        {
            auto value = mid_time / t;
            human += value;
        }
        if (n <= human)
        {
            answer = mid_time;
            max_time = mid_time - 1;
        }
        else
        {
            min_time = mid_time + 1;
        }
    }
    return answer;
}
// *&)*@*

Binary Search를 사용하되, n과 human이 같으면 return되지 않고 계속해서 min_time/max_time을 맞춰가는게 포인트입니다.

728x90
반응형
Comments