File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 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+ */
You can’t perform that action at this time.
0 commit comments