[Python] 백준 11728 - 배열 합치기
2022. 6. 27. 22:34ㆍ알고리즘/문제풀이
[Python] 백준 11728 - 배열 합치기
문제 출처 : https://www.acmicpc.net/problem/11728
문제풀이
두 개의 방법을 가져왔다. 하나는 기존 파이썬의 기능을 사용한 단순 풀이다.
다른 하나는 힙 큐를 활용한 풀이이다. 힙 큐의 경우 처음에는 정렬을 할 수 있다는 점에서 사용을 했지만 생각처럼 들어가는 순서에 맞춰서 정렬이 되지 않아 tmp 임시 리스트를 만들어서 한번 heapq로 사용 후 pop으로 꺼내면서 res 리스트에 추가하는 방법으로 코드를 작성하였다.
import heapq
n, m = map(int, input().split())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
# res = A + B
# res.sort()
for i in res:
print(i, end = " ")
import heapq
n, m = map(int, input().split())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
for i in B:
A.append(i)
tmp = []
res = []
for i in A:
heapq.heappush(tmp, i)
for _ in range(len(tmp)):
res.append(heapq.heappop(tmp))
for i in res:
print(i, end = " ")
정리
힙큐(heapq)에 대해 아직 잘 모르고 있다는 것을 알았다. 이 말은 아직 자료구조가 미숙하다는 말이랑 같다고 생각을 하였다. 자료구조에 대해 좀 더 시간을 들이고 공부해야겠다.
'알고리즘 > 문제풀이' 카테고리의 다른 글
[Python] 백준 알고리즘 1010번 - 다리 놓기 (0) | 2022.07.30 |
---|---|
[Python] 백준 알고리즘 11726 - 2 x n 타일링 (0) | 2022.07.30 |
[Python] 백준 알고리즘 1302번 - 베스트셀러 (0) | 2022.05.06 |
[Python] 백준 알고리즘 13417번 - 카드 문자열 (0) | 2022.05.04 |
[Python] 백준 알고리즘 14425번 문자열 집합 (0) | 2022.05.04 |