Algorithm/파이썬 알고리즘 문제풀이 (코딩테스트대비)
[파이썬 알고리즘 문제풀이] : 두 리스트 합치기
오주현
2021. 12. 30. 16:48
반응형
문제
오름차순으로 정렬이 된 리스트가 주어지고 두 리스트를 그대로 합쳐 오름차순이 정렬된 형태로 출력한다.
주의
풀이
n = int(input())
a = list(map(int, input().split()))
m = int(input())
b = list(map(int, input().split()))
p1 = p2 = 0
c = []
while p1 < n and p2 < m:
# 오름 차순으로 정렬하기 위해 하나씩 값을 비교한다.
if a[p1] <= b[p2]:
c.append(a[p1])
p1 += 1
else:
c.append(b[p2])
p2 += 1
# 비교한 값들을 C 리스트에 담아준다.
# while문이 둘 중 하나가 완료되어 끝났을 때 나머지 하나를 리스트에 합친다.
if p1 < n:
c = c+a[p1:]
if p2 < m:
c = c+b[p2:]
for x in c:
print(x, end = ' ')
반응형