binary search 2

이진 탐색(binary search)

개념 오름차순으로 정렬된 리스트에서 특정한 값을 찾는 알고리즘입니다 의사코드 BinarySearch(A[0..N-1], value, low, high) { if (high value) return BinarySearch(A, value, low, mid-1) else if (A[mid] < value) return BinarySearch(A, value, mid+1, high) else return mid // found } BinarySearch(정렬된 배열, 찾을 값, 배열의 첫 인덱스, 배열의 마지막 인덱스) 를 통해 이진 탐색을 수행할 수 있습니다 활용 그러면 해당 알고리즘을 코테 문제에 어떻게 적용할 수 있는지 생각해 보겠습니다. https://www.acmicpc.net/problem/1300..

백준 1939 : 중량제한

https://www.acmicpc.net/problem/1939 1939번: 중량제한 첫째 줄에 N, M(1≤M≤100,000)이 주어진다. 다음 M개의 줄에는 다리에 대한 정보를 나타내는 세 정수 A, B(1≤A, B≤N), C(1≤C≤1,000,000,000)가 주어진다. 이는 A번 섬과 B번 섬 사이에 중량제한이 C인 다리 www.acmicpc.net 접근방법 해당 문제에 이분탐색을 적용하여 해결하겠습니다. 이동하는 물품들의 중량을 정해놓고 가능한지 검사해나가면 중량의 최댓값을 구할 수 있습니다. 순서 각 다리의 중량 제한의 최댓값을 구한다. low = 0, high = 중량의 최댓값으로 설정 low와 high을 가지고 이분탐색 mid = (high + low) / 2 + 1 mid 중량으로 다리..