happy coding

[java] 2751. 수 정렬하기 2 본문

coding study/baekjoon

[java] 2751. 수 정렬하기 2

yeoonii 2023. 8. 31. 17:11

문제

N개의 수가 주어졌을 때, 이를 오름차순으로 정렬하는 프로그램을 작성하시오.

입력

첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.

출력

첫째 줄부터 N개의 줄에 오름차순으로 정렬한 결과를 한 줄에 하나씩 출력한다.

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));

        int N = Integer.parseInt(br.readLine());
        ArrayList<Integer> arr = new ArrayList<>();

        for (int i=0; i<N ; i++) {
            arr.add(Integer.parseInt(br.readLine()));
        }
        Collections.sort(arr);

        for (int i=0 ; i<N ; i++) {
            System.out.println(arr.get(i));
        }
    }
}

omg 시간 초과..

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        int N = Integer.parseInt(br.readLine());

        ArrayList<Integer> arr = new ArrayList<>();

        for(int i = 0; i < N; i++) {
            arr.add(Integer.parseInt(br.readLine()));
        }

        Collections.sort(arr);

        for(int value : arr) {
            sb.append(value).append('\n');
        }
        System.out.println(sb);
    }
}

StringBuilder까지 사용해야 시간 초과가 안 뜨나 보다.. 단순하게 Collections.sort 해서 해결될 줄 알았음

'coding study > baekjoon' 카테고리의 다른 글

[java] 1764. 듣보잡  (0) 2023.08.31
[java] 1427. 소트인사이드  (0) 2023.08.31
[java] 2941. 크로아티아 알파벳  (0) 2023.08.30
[java] 1316. 그룹 단어 체커  (0) 2023.08.30
[java] 25372. 성택이의 은밀한 비밀번호  (0) 2023.08.21
Comments