C++

[백준 알고리즘] 10867번 : 중복 빼고 정렬하기, c++

2022. 1. 18. 14:01

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

 

10867번: 중복 빼고 정렬하기

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

www.acmicpc.net

c++로 백준 10867번 문제를 풀어보겠다.

 

 

 

 

 

문제

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

입력

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

출력

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

예제 입력 1 복사

10
1 4 2 3 1 4 2 3 1 2

예제 출력 1 복사

1 2 3 4

 

 

 

 

<문제 풀이>

1. N을 선언한 후 입력받는다.

2. int 형의 배열을 선언한 후 N개의 숫자를 입력받아 저장한다.

3. 앞에 있는 숫자와 뒤에 있는 숫자를 비교해 오름차순으로 정렬한다.

4. 중복되지 않도록 하나씩 출력한다.

 

 

코드는 다음과 같다.

visual studio에선 잘 실행되지만 백준 알고리즘 프로그램에선 시간초과로 뜨고 있다.

다음에 무슨 오류가 있는 지 다시 도전해봐야겠다.