본문으로 바로가기
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

백준알고리즘


https://www.acmicpc.net/problem/1181


여기서는 Set을 사용하여 중복된 단어를 제거해주고, 먼저 알파벳 순서대로 단어를 정렬한 후

자바의 Comparator을 이용하여 단어를 한번 더 정렬을 해주어야 한다.

자바의 Comparator을 이 전에 블로그 포스팅 한 적이 있어서 Comparator을 모른다면 한번 보길 추천한다.

http://ktko.tistory.com/154?category=629345

import java.util.Arrays;
import java.util.Comparator;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;

public class Main2 {

    public static void main(String[] args) {
        Scanner scan = new Scanner (System.in);
        int count = Integer.parseInt(scan.nextLine().trim());
        
        Set<String> set = new HashSet<String>();
        for(int i=0; i<count; i++) {
            String input = scan.nextLine().trim();
            set.add(input);
        }
        
        String array[] = new String[set.size()];
        set.toArray(array);
        
        Arrays.sort(array);
        Arrays.sort(array, new Comparator<String>() {

            @Override
            public int compare(String o1, String o2) {

                return o1.length() - o2.length();
            }
            
        });
        
        for(int i=0; i < array.length; i++) {
            System.out.println(array[i]);
        }
        
        
    }
}