Algorithm/baekjoon

단어 정렬

마닐라 2021. 12. 27. 14:31

📍 문제 설명

💡 접근

이거는 사전순 정렬과 문자열의 길이가 짧을 때 정렬을 참고 하기위하여 작성하였음

 

👩‍💻 코드

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
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());
        String[] arr = new String[n];

        for(int i = 0; i < arr.length; i++) {
            arr[i] = br.readLine();
        }

        Arrays.sort(arr, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                //단어 길이 같은 경우 사전순으로
                if(o1.length() == o2.length()) {
                    return o1.compareTo(o2);
                }
                //짧은 순 출력
                else {
                    return o1.length() - o2.length();
                }
            }
        });

        System.out.println(arr[0]);

        for(int i = 1; i <arr.length; i++) {
            if(!arr[i].equals(arr[i-1])) System.out.println(arr[i]);
        }
    }
}

'Algorithm > baekjoon' 카테고리의 다른 글

N과 M(2)  (0) 2021.12.27
N과 M (1)  (0) 2021.12.27
통계학  (0) 2021.12.27
한수  (0) 2021.12.26
제로  (0) 2021.12.26