1
+ package backjoon ;
2
+ // https://www.acmicpc.net/problem/2751
3
+ // 수 정렬하기 2
4
+ import java .io .BufferedReader ;
5
+ import java .io .IOException ;
6
+ import java .io .InputStreamReader ;
7
+ import java .util .ArrayList ;
8
+ import java .util .Collections ;
9
+
10
+ // 2750 수 정렬하기 방식인 Arrays.sort()로 풀면 시간초과가 된다.
11
+ public class _2751 {
12
+ public static void main (String [] args ) throws IOException {
13
+ BufferedReader br = new BufferedReader (new InputStreamReader (System .in ));
14
+ int N = Integer .parseInt (br .readLine ());
15
+
16
+ // sol1 시간초과로 실패
17
+ /*
18
+ // 배열에 오름차순으로 숫자 넣기
19
+ int[] arr = new int[N];
20
+ arr[0] = Integer.parseInt(br.readLine());
21
+ for(int i=1; i<N; i++){
22
+ int n = Integer.parseInt(br.readLine());
23
+ if(n < arr[i-1]){
24
+ arr[i] = arr[i-1];
25
+ arr[i-1] = n;
26
+ }
27
+ }
28
+ // 출력
29
+ for(int n : arr){
30
+ System.out.println(n);
31
+ }
32
+ */
33
+
34
+ // sol2 System.out.println으로 출력하면 시간초과 발생 -> StringBuilder 사용
35
+ // memory 160156 runtime 1396
36
+ StringBuilder sb = new StringBuilder ();
37
+ // 리스트에 숫자넣기
38
+ ArrayList <Integer > list = new ArrayList <>();
39
+ for (int i = 0 ; i < N ; i ++) {
40
+ list .add (Integer .parseInt (br .readLine ()));
41
+ }
42
+ // 오름차순 정렬
43
+ Collections .sort (list );
44
+ // 출력
45
+ for (int value : list ) {
46
+ sb .append (value ).append ('\n' );
47
+ }
48
+ System .out .println (sb );
49
+ }
50
+ }
51
+ /*
52
+ input
53
+ 5
54
+ 5
55
+ 2
56
+ 3
57
+ 4
58
+ 1
59
+
60
+ output
61
+ 1
62
+ 2
63
+ 3
64
+ 4
65
+ 5
66
+ */
0 commit comments