본문 바로가기
IT/BOJ

백준(BOJ) 3079 입국심사 **

by 빨강자몽 2018. 6. 17.

# 이분탐색


이 문제를 보고 이분탐색을 생각해 내지 못했다....ㅠ

밑에있는 알고리즘 분류를 보고 아..... 깨달음을 얻었다...

아직 많이 부족하구나..ㅠ

#include <iostream>
#define MAX 100001
#pragma warning(disable:4996)
using namespace std;
typedef long long ll;

ll n,m,mx=0,ans=__INT64_MAX__,arr[MAX];

int main()
{
    scanf("%lld%lld",&n,&m);
    for(int i=0;i<n;i++)
    {
        scanf("%lld",&arr[i]);
        mx=max(mx,arr[i]);
    }
    ll l=1,r=mx*m;
    while(l<r)
    {
        ll mid=(l+r)/2,val=0;
        for(int i=0;i<n;i++)
            val+=mid/arr[i];
        if(m<=val)
            r=mid;
        else
            l=mid+1;
    }
    printf("%lld",l);
}