본문 바로가기

파이썬 알고리즘 (인프런)/탐색&시물레이션

4. 두 리스트 합치기

# 두 리스트 합치기

def run(N, a, M, b):
    return sorted(a+b)


# 병합정렬 응용해서 합치고 정렬하기
def run(N, a, M, b):
    res = []
    pa = pb = 0
    while pa < N and pb < M:
        if a[pa] < b[pb]:
            res.append(a[pa])
            pa += 1
        else:
            res.append(b[pb])
            pb += 1

    if pa < N:
        res.extend(a[pa:])
    else:
        res.extend(b[pb:])

    return res


N = int(input())
a = list(map(int, input().split()))
M = int(input())
b = list(map(int, input().split()))

ans = run(N, a, M, b)
[print(x, end=" ") for x in ans]

'파이썬 알고리즘 (인프런) > 탐색&amp;amp;시물레이션' 카테고리의 다른 글

6. 격자판 최대합  (0) 2021.02.09
5. 수들의 합  (0) 2021.02.09
3. 카드 역배치  (0) 2021.02.09
2. 숫자만 추출  (0) 2021.02.09
1. 회문 문자열 검사  (0) 2021.02.09