본문 바로가기
CS/알고리즘

[카테부] 코테스터디 1주차 - 배열 합치기 (백준 11728)

by alphaca202 2024. 8. 9.

정렬된 두 배열이기 때문에 앞에서 부터 포인터를 두개 잡고

순차적으로 비교해 나가면 된다!

 

마지막에 i, j 인덱스 때문에 살짝 헷갈림!

n, m = map(int, input().split())
arr1 = list(map(int, input().split()))
arr2 = list(map(int, input().split()))
ans_arr = []

i, j = 0, 0
while i < n and j < m:

    if arr1[i] < arr2[j]:
        ans_arr.append(arr1[i])
        i += 1
    else:
        ans_arr.append(arr2[j])
        j += 1

    
if i == n:
    for x in range(j, m):
        ans_arr.append(arr2[x])
elif j == m:
    for y in range(i, n):
        ans_arr.append(arr1[y])

for ans in ans_arr:
    print(ans, end=" ")