[백준] 11663 - 선분 위의 점
2024. 7. 4. 10:30ㆍPS/백준
728x90
문제 링크
https://www.acmicpc.net/problem/11663
느낀 점
이분 탐색의 개념이 아직 정확하게 확립이 안된 것 같은 느낌.. 그리고 등호 하나 반환 값 하나에 따라 결과가 천차만별로 달라지니 이것을 유의해서 이분 탐색 문제를 접근하자!
import sys
def min_p(min):
s, e = 0, len(dot) - 1
while s <= e:
m = (s + e) // 2
if dot[m] < min:
s = m + 1
else:
e = m - 1
return e + 1
def max_p(max):
s, e = 0, len(dot) - 1
while s <= e:
m = (s + e) // 2
if dot[m] <= max:
s = m + 1
else:
e = m - 1
return e
N, M = map(int, sys.stdin.readline().split())
dot = sorted(list(map(int, sys.stdin.readline().split())))
for _ in range(M):
M_list = list(map(int, sys.stdin.readline().split()))
max_ind = max_p(M_list[-1])
min_ind = min_p(M_list[0])
print(max_ind - min_ind + 1)
'PS > 백준' 카테고리의 다른 글
[백준] 14567 - 선수과목 (0) | 2024.08.16 |
---|---|
[백준] 5430 - AC (0) | 2024.08.11 |
[백준] 7795 - 먹을 것인가 먹힐 것인가 (0) | 2024.07.01 |
[백준] 4963 - 섬의 개수 (0) | 2024.06.26 |
[백준] 2644 - 촌수계산 (0) | 2024.06.26 |