본문 바로가기
코딩 테스트/do it! 알고리즘 코딩테스트

029 수 찾기

by ornni 2024. 5. 21.
728x90
반응형

첫번째 코드

 

이진탐색을 이용하자!!!

정렬에서 어떤 함수를 사용하는게 좋을지...

그리고 이진탐색의 전체적인 구성을 어떻게 하는 것이 좋을지에 대해서 책을 보면서 작성했다.

꽤 해보면 금방 따라할 수 있을 듯한 느낌의 주제!

 

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)

 

통과!


링크

https://github.com/ornni/programmers/tree/main/%EB%B0%B1%EC%A4%80/Silver/1920.%E2%80%85%EC%88%98%E2%80%85%EC%B0%BE%EA%B8%B0

 

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