# 이분탐색
이 문제를 보고 이분탐색을 생각해 내지 못했다....ㅠ
밑에있는 알고리즘 분류를 보고 아..... 깨달음을 얻었다...
아직 많이 부족하구나..ㅠ
#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); }
'IT > BOJ' 카테고리의 다른 글
백준(BOJ) 13547 수열과 쿼리5 *** (0) | 2018.06.22 |
---|---|
백준(BOJ) 9938 방청소 *** (0) | 2018.06.18 |
백준(BOJ) 15803 PLAYERJINAH’S BOTTLEGROUNDS * (0) | 2018.06.16 |
백준(BOJ) 15805 영우의 기숙사 청소 ** (0) | 2018.06.16 |
백준(BOJ) 1495 기타리스트 ** (0) | 2018.06.15 |