첫번째 코드
이진탐색을 이용하자!!!
정렬에서 어떤 함수를 사용하는게 좋을지...
그리고 이진탐색의 전체적인 구성을 어떻게 하는 것이 좋을지에 대해서 책을 보면서 작성했다.
꽤 해보면 금방 따라할 수 있을 듯한 느낌의 주제!
import sys
input = sys.stdin.readline
n = int(input())
n_number = list(map(int, input().split()))
n_number.sort()
m = int(input())
m_number = list(map(int, input().split()))
for target in m_number:
find = False
start = 0
end = n-1
while start <= end:
median = int((start + end)/2)
median_number = n_number[median]
if median_number > target:
end = median -1
elif median_number < target:
start = median + 1
else:
find = True
break
if find:
print(1)
else:
print(0)
통과!
링크
programmers/백준/Silver/1920. 수 찾기 at main · ornni/programmers
repository for recording Programmers Algorithm problem solving - ornni/programmers
github.com
'코딩 테스트 > do it! 알고리즘 코딩테스트' 카테고리의 다른 글
032 동전 0 (0) | 2024.05.23 |
---|---|
030 기타 레슨 (0) | 2024.05.21 |
027 미로 탐색 (2) | 2024.05.16 |
028 트리의 지름 (0) | 2024.05.16 |
025 ABCDE (0) | 2024.05.14 |