문제 링크
https://www.acmicpc.net/problem/10815
print(*result) : 리스트의 요소만 출력
정답 코드
import sys
N = int(sys.stdin.readline())
nums_card = list(map(int,sys.stdin.readline().split()))
M = int(sys.stdin.readline())
nums_int = list(map(int,sys.stdin.readline().split()))
nums_card.sort() #상근이가 가지고 있는 숫자 카드들을 정렬. 정수들은 위치에 맞추어 결과를 출력해야하므로 정렬하지 않음.
result = [0] * (M)
for i in range(M):
start = 0 #숫자 카드 리스트 인덱스 최소값
end = N-1 #숫자 카드 리스트 인덱스 최대값
while start <= end:
mid = (start + end) // 2
if nums_card[mid] == nums_int[i]:
result[i] = 1
break
elif nums_card[mid] < nums_int[i]:
start = mid + 1
else:
end = mid - 1
print(*result) #리스트를 요소만 빼서 출력
728x90
'파이썬 알고리즘 문제 풀이' 카테고리의 다른 글
Baekjoon Online Judge 2630번 파이썬. 분할정복 (0) | 2022.12.26 |
---|---|
Baekjoon Online Judge 10816번 파이썬 (1) | 2022.09.26 |
Baekjoon Online Judge 2110번 파이썬 (1) | 2022.09.21 |
Baekjoon Online Judge 2805번 파이썬 (1) | 2022.09.19 |
Baekjoon Online Judge 1654번 파이썬 (0) | 2022.09.14 |