2751번: 수 정렬하기 2
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 숫자가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
www.acmicpc.net
[문제]
N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.
<단계> 정렬
<알고리즘 분류> 정렬
[input]
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다.
둘째 줄부터 N개의 줄에는 숫자가 주어진다.
이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
[output]
첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.
[풀이 방법]
-
Scanner 이용하여 수의 개수 입력받고, N개의 숫자 입력받아 배열에 저장
-
Arrays.sort( ) 함수 활용하여 배열 정렬
-
오름차순으로 정렬한 결과를 한 줄에 하나씩 출력
→ 시간 초과
-
BufferedReader와 BufferedWriter 활용하여 수를 입력받고 출력
-
Scanner와 동일
시간 초과 코드
성공 코드
- BufferedReader는 String으로 한 줄씩 입력받기 때문에 str 변수에 입력받아 저장한 후, 정수형으로 변환
- 배열을 Scanner 사용했을 때와 동일하게 Arrays.sort( ) 활용하여 정렬
- BufferedWriter 활용하여 출력 (문자형만 출력 가능하여, String.valueOf( ) 함수 활용)
- bw.flush( ) 함수 사용하지 않으면 버퍼에 저장된 내용이 출력되지 않아 꼭 명시해야 함
'Android ᙏ̤̫͚ > 차근차근 JAVA' 카테고리의 다른 글
[백준 11651번] 좌표 정렬하기 2 (0) | 2021.02.09 |
---|---|
[백준 11650번] 좌표 정렬하기 (0) | 2021.02.09 |
[백준 11721번] 열 개씩 끊어 출력하기 (0) | 2021.02.08 |
[백준 11719번] 그대로 출력하기 2 (0) | 2021.02.08 |
[백준 10992번] 별 찍기 - 17 (0) | 2021.02.08 |