hahn

단계별로 풀어보기(정렬 - 수 정렬하기 2) 본문

코딩테스트 연습/백준(JAVA)

단계별로 풀어보기(정렬 - 수 정렬하기 2)

hahn 2021. 9. 12. 20:39
728x90
반응형

2751번: 수 정렬하기 2 (acmicpc.net)

 

2751번: 수 정렬하기 2

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

www.acmicpc.net

http://boj.kr/efc4b97f698d4ef8b1d332cdc66478a1

 

공유 소스 보기

 

www.acmicpc.net

더보기
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;

class Main{
    
    public static void main(String[] args) throws IOException{
        
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
		
		int wordCount = Integer.parseInt(br.readLine());
		
		List<Integer> arr = new ArrayList<Integer>();
		
		for(int i = 0; i < wordCount; i++) {
			
			arr.add(i, Integer.parseInt(br.readLine()));
			
		}
		
		arr.sort(Comparator.naturalOrder());
        
        for(int i = 0; i < arr.size(); i++){
            
            bw.write(String.valueOf(arr.get(i)));
            bw.newLine();
            
        }
        
        bw.close();
        
    }
    
}

단계별로 풀어보기 문제 아래 설명에

 

내장 함수 이용해 보라 해서 그거 이용해서 풀어봤다.

 

내장 함수를 사용하는걸 좀 꺼려했었는데

 

아마 누가 만들어 놓은거 가져다 쓰는 거니까

 

내 실력의 향상에는 도움이 되지 않을 거라고 생각했던 것 같다.

 

학원 다닐 때에는 ArrayList 많이 이용했는데

 

그 기억 살려서 풀어봤다. List.sort 찍으니까

 

Comparator로 입력받길래 얘도. 찍어보니까

 

naturalOrder, reverseOrder 있길래

 

오름, 내림 차순일 거라 생각하고 해 봤더니 풀렸다.

 

Botherahn :: [JAVA] List.sort() 정렬(오름차순, 내림차순) - Comparator 이용 (tistory.com)

 

[JAVA] List.sort() 정렬(오름차순, 내림차순) - Comparator 이용

백준 정렬 문제 풀던 중 시간 초과로 정렬 방법 찾아봐야 하나 싶었는데 이 문장을 보고 학원에서 코드 짤 때 검색해서 사용했던 게 기억이 나 한 번 다시 찾아봤다. 학원 다닐 때 Map, ArrayList 자

ahnstu.tistory.com

대충 정리해둔 것

728x90
반응형