본문 바로가기
Develop/백준 (python)

[백준] 11728번: 배열합치기 (python)

by Tarra 2022. 2. 2.

11728번: 배열합치기


문제 )
정렬되어있는 두 배열 A와 B가 주어진다. 두 배열을 합친 다음 정렬해서 출력하는 프로그램을 작성하시오.

 

입력 :

첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000)

둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거나 같은 정수이다.

 

출력 :

첫째 줄에 두 배열을 합친 후 정렬한 결과를 출력한다.

 

 

 

풀이)

투포인터 풀이

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
N, M = map(int, input().split())
 
= list(map(int, input().split()))
= list(map(int, input().split()))
 
s, e = 00
 
while s != N or e != M:
    if s == N:
        print(B[e], end=" ")
        e += 1
    elif e == M:
        print(A[s], end=" ")
        s += 1
    else:
        if A[s] < B[e]:
            print(A[s], end= " ")
            s += 1
        else:
            print(B[e], end= " ")
            e += 1
cs

출처 : https://www.acmicpc.net/problem/11728

 

11728번: 배열 합치기

첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000) 둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거

www.acmicpc.net