[백준] 2512 : 예산 (파이썬)
·
Algorithm/Binary Search
이분 탐색 문제https://www.acmicpc.net/problem/2512💡 풀이 코드 (성공)import sys n = int(sys.stdin.readline())arr = list(map(int, sys.stdin.readline().split()))amounts = int(sys.stdin.readline())def binary_search(n, arr, amounts): start = 1 end = max(arr) answer = 0 while start
[백준] 2110 : 공유기 설치 (파이썬)
·
Algorithm/Binary Search
이분 탐색 문제https://www.acmicpc.net/problem/2110문제 이해1. 요점문제의 요점은 다음과 같다.각 공유기 사이의 거리 및 간격이 최대가 되게끔 공유기 C개를 배치하라.즉, 공유기 C개를 각각 최대한 멀리 떨어뜨려라.이때 공유기 사이의 거리 및 간격이 각각 달라도 된다. 최대가 되게 공유기를 배치 후 이 중에서 최소값을 출력한다.결론적으로는 공유기들이 각각 최대한 멀리 떨어져 있어야 한다. 2. 예시9 31 2 3 4 5 6 7 8 100정답 : 7 (1 8 100)9 410 20 30 40 48 60 70 80 81정답 : 20 (10 30 60 80)9 41 2 3 4 5 6 7 15 100정답 : 6 (1 7 15 100)10 41 2 3 4 5 6 7 8 9 10정답 :..
[백준] 1654 : 랜선 자르기 (파이썬)
·
Algorithm/Binary Search
이분 탐색 문제https://www.acmicpc.net/problem/1654💡 풀이코드 (성공)import sys K, N = map(int, sys.stdin.readline().split())lans = []for _ in range(K): lan = int(sys.stdin.readline()) lans.append(lan)def binary_search(K, N, lans): start = 1 end = max(lans) answer = 0 while start = N: start = mid + 1 answer = mid else: end = mid - 1 return answer..
[알고리즘] 이진탐색
·
Computer Science/Algorithm
이진탐색이란?이진탐색(Binary Search)은 정렬된 배열에서 특정 값을 찾거나, 그 값이 위치할 수 있는 인덱스를 찾는 데 매우 효율적인 알고리즘이다.즉, 최적의 값이나 인덱스의 위치를 찾는데 유용하다.이진탐색의 종류 1. 값이 삽입될 인덱스를 이진탐색하는 경우목적: 특정 값이 위치할 수 있는 배열의 인덱스를 찾는 것.방법: 배열에서 중간 인덱스를 선택하고, 찾고자 하는 값과 중간 인덱스의 값을 비교한다. 찾고자 하는 값이 중간 인덱스 값보다 작다면, 배열의 왼쪽 절반을 검색하고, 크다면 오른쪽 절반을 검색한다. 이 과정을 반복하여 값을 찾거나, 값을 찾지 못하는 경우 해당 값이 위치할 수 있는 인덱스를 반환한다.def binary_search_index(arr, target): left, r..
_은선_
'백준 이진탐색' 태그의 글 목록