일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 다시봐
- 다시 정리해야함
- array랑 list
- 취준기록
- foldindexed
- iPortfolio
- 알고리즘 인증_2주차
- 알고리즘 인증
- 알고리즘 인증_1주차
- filternot
- 다시정리하기
- 코딩테스트
- Filter
- recyclerview
- 코틀린
Archives
- Today
- Total
Moments of growth
[이분 탐색] 입국 심사 본문
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
long long solution(int n, vector<int> times) {
long long answer = 0;
sort(times.begin(), times.end());
long long start = (long long)times[0];
long long end = (long long)times[times.size()-1] * n;
while(start<=end){
long long sum=0;
long long mid = (start+end)/2;
for(int i: times){
sum+=mid/(long long)i;
}
if(sum>=n){ //더 낮춰도 됨
if(answer == 0){
answer = mid;
}else{
answer = min(answer,mid);
}
end = mid-1;
}else{
start = mid+1;
}
}
return answer;
}
'Algorithm [C++] > Programmers [Level3]' 카테고리의 다른 글
[Heap] 디스크 컨트롤러 (0) | 2022.05.23 |
---|---|
[Heap] 이중우선순위큐 (0) | 2022.05.16 |
Comments