BOJ::11728 배열 합치기

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


주어지는 A,B 배열이 정렬 되어 있다는 점을 이용해

비교하면서 출력했다.


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <stdio.h>
 
int n, m;
long long a[1000000];
long long b[1000000];
 
int main() {
    scanf("%d %d"&n, &m);
    for (int i = 0; i < n; i++)    scanf("%lld"&a[i]);
    for (int i = 0; i < m; i++)    scanf("%lld"&b[i]);
    
    int aa = 0;
    int bb = 0;
    while (true) {
        if (aa == n|| bb == m) break;
        if (a[aa] == b[bb]) {
            printf("%lld %lld ", a[aa], a[aa]);
            aa++;
            bb++;
        }
        else if (a[aa] < b[bb]) {
            printf("%lld ", a[aa]);
            aa++;
        }
        else {
            printf("%lld ", b[bb]);
            bb++;
        }
    }
 
    while (aa != n) {
        printf("%lld ", a[aa]);
        aa++;
    }
    while (bb != m) {
        printf("%lld ", b[bb]);
        bb++;
    }
    printf("\n");
}
cs


'BOJ::문제풀이' 카테고리의 다른 글

1197 최소 스패닝 트리  (0) 2018.02.11
2042 구간 합 구하기  (0) 2018.02.09
10942 팰린드롬?  (2) 2018.02.05
11723 집합  (0) 2018.02.03
2470 두 용액  (0) 2018.01.30

+ Recent posts