#include <algorithm>
#include <string>
#include <vector>
using namespace std;
long long solution(int n, vector<int> times)
{
long long min = 1, max = (long long)n * (*max_element(times.begin(), times.end()));
long long answer = 0;
while(min<=max)
{
long long avg = (min + max) / 2;
long long tmp = 0;
for (auto time : times)
tmp += avg / time;
if (n <= tmp)
{
answer = avg;
max = avg - 1;
}
else
min = avg + 1;
}
return answer;
}
'코딩테스트 > 프로그래머스' 카테고리의 다른 글
2016년 - Level1 (0) | 2022.08.12 |
---|---|
[3] 네트워크 (0) | 2022.08.11 |
[2] 오픈 채팅방 (0) | 2022.08.11 |
[2] 이진 변환 반복하기 (0) | 2022.08.11 |
[1] 신고 결과 받기 (0) | 2022.05.31 |