본문 바로가기

Algorithm & SQL/Baekjoon

[Algorithm] [python & Swift] 백준/BOJ - 10867 _ 중복 빼고 정렬하기

10867 - 중복 뺴고 정렬하기

 

문제


N개의 정수가 주어진다. 이때, N개의 정수를 오름차순으로 정렬하는 프로그램을 작성하시오. 같은 정수는 한 번만 출력한다.

 

입력


첫째 줄에 수의 개수 N (1 ≤ N ≤ 100,000)이 주어진다. 둘째에는 숫자가 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다.

 

출력


첫째 줄에 수를 오름차순으로 정렬한 결과를 출력한다. 이때, 같은 수는 한 번만 출력한다.

 

제출 코드


Python

from sys import stdin
n = int(stdin.readline())
num_set = set(map(int, stdin.readline().split()))
print(*sorted(list(num_set)))

Swift

let n = Int(readLine()!)!
var numSet = Set<Int>()
readLine()!.split(separator: " ").map { numSet.insert(Int($0)!) }
numSet.sorted().map{ print($0, terminator: " ") }

 

문제 풀이


별다른 문제 풀이가 없어서 간략하게 기재한다.

 

입력받은 정수 리스트의 중복을 제거하기 위해 Set 을 이용하고 이후 조건에 맞춰 출력만 해주면 된다.

 

( Swift 에서의 고차함수 map은 정말 최고의 함수다..! )