문제
11728번: 배열 합치기
첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000) 둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거
www.acmicpc.net
문제
정렬되어있는 두 배열 A와 B가 주어진다. 두 배열을 합친 다음 정렬해서 출력하는 프로그램을 작성하시오.
입력
첫째 줄에 배열 A의 크기 N, 배열 B의 크기 M이 주어진다. (1 ≤ N, M ≤ 1,000,000)
둘째 줄에는 배열 A의 내용이, 셋째 줄에는 배열 B의 내용이 주어진다. 배열에 들어있는 수는 절댓값이 109보다 작거나 같은 정수이다.
출력
첫째 줄에 두 배열을 합친 후 정렬한 결과를 출력한다.
예제 입력 1 복사
2 2
3 5
2 9
예제 출력 1 복사
2 3 5 9
예제 입력 2 복사
2 1
4 7
1
예제 출력 2 복사
1 4 7
예제 입력 3 복사
4 3
2 3 5 9
1 4 7
예제 출력 3 복사
1 2 3 4 5 7 9
출처
- 문제를 만든 사람: baekjoon
import sys
input = sys.stdin.readline
n, m = map(int,input().split())
a = list(map(int,input().split()))
b = list(map(int,input().split()))
a += b
a = sorted(a)
print(a[:])
처음 작성하고 실패했던 코드 입니다.
a 와 b 의 리스트를 a리스트로 합치게한 후 sorted(a)를 사용해 리스트 안의 값들을 정렬시킵니다.
이후에 a[:]를 사용해 리스트 안의 내용을 모두 출력 하였으나,
[ , , , , ] 의 형태로 특수 문자가 포함된 형태로 출력되는 문제가 있습니다.
import sys
input = sys.stdin.readline
n, m = map(int,input().split())
a = list(map(int,input().split()))
b = list(map(int,input().split()))
a += b
a= sorted(a)
for _ in range(n+m):
print(a[_], end = ' ')
따라서 배열을 사용해 해당 위치의 값을 출력하였습니다.
end문자를 사용해 문장을 출력 후 줄바꿈이 아닌 원하는 문자로 대신하게끔 설정할 수 있습니다.
출력 형태를 위해 띄어쓰기로 변경하여 출력하면
예제와 동일하게 출력된 것을 알 수 있습니다.
Git Hub
BaekJoon-Study/11728.py at python · GUuu9/BaekJoon-Study (github.com)
GitHub - GUuu9/BaekJoon-Study
Contribute to GUuu9/BaekJoon-Study development by creating an account on GitHub.
github.com
'백준 코드 공부 > 파이썬' 카테고리의 다른 글
백준 17362 : 수학은 체육과목 입니다 2 (Python) (0) | 2022.02.07 |
---|---|
백준 1026 : 보물 (Pyhon) (0) | 2022.02.07 |
백준 9655 : 돌 게임 (Python) (0) | 2022.02.04 |
백준 2559 : 수열 (Python) (0) | 2022.01.29 |
백준 1284 : 집주소 (Python) (0) | 2022.01.24 |