01
23

 

 

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

 

1181๋ฒˆ: ๋‹จ์–ด ์ •๋ ฌ

์ฒซ์งธ ์ค„์— ๋‹จ์–ด์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. (1 ≤ N ≤ 20,000) ๋‘˜์งธ ์ค„๋ถ€ํ„ฐ N๊ฐœ์˜ ์ค„์— ๊ฑธ์ณ ์•ŒํŒŒ๋ฒณ ์†Œ๋ฌธ์ž๋กœ ์ด๋ฃจ์–ด์ง„ ๋‹จ์–ด๊ฐ€ ํ•œ ์ค„์— ํ•˜๋‚˜์”ฉ ์ฃผ์–ด์ง„๋‹ค. ์ฃผ์–ด์ง€๋Š” ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋Š” 50์„ ๋„˜์ง€ ์•Š๋Š”๋‹ค.

www.acmicpc.net


์˜ค๋‹ต๋…ธํŠธ(ํ‘ธ๋Š” ๋™์•ˆ ์‚ฌ๊ณ ๊ณผ์ • ๋ฐ ๊ฐœ์„ ์ )

sort๋ฅผ ์ด์šฉํ•˜๋ฉด ๋˜๊ฒ ๋‹ค ์‹ถ์—ˆ๋‹ค. String์„ ์ •๋ ฌํ•˜๋ฉด ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” ์‚ฌ์ „์ˆœ์œผ๋กœ ์ •๋ ฌํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์‚ฌ์ „ ์ˆœ์œผ๋กœ ์ •๋ ฌ๋œ ๋ฆฌ์ŠคํŠธ๋ฅผ ๋‹ค์‹œ Comparable Interface๋ฅผ ๊ตฌํ˜„ํ•ด์„œ ๊ธธ์ด์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

 


์ •๋‹ต์ฝ”๋“œ

import java.util.*;
import java.io.*;

public class Main {
    public static void main(String[] args) throws Exception {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        ArrayList<String> input = new ArrayList<>();
        for(int i=0; i<n; i++){
            String t = sc.next();
            if(!input.contains(t)){
                input.add(t);
            }
        }
        Collections.sort(input);
        Collections.sort(input, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return o1.length() - o2.length();
            }
        });

        for(int i=0; i<input.size(); i++){
            System.out.println(input.get(i));
        }
    }
}

 

compare์— ๋ฐ˜ํ™˜๋˜๋Š” ๊ฐ’์ด ์–‘์ˆ˜๋ฉด ๋‚ด๋ฆผ์ฐจ์ˆœ, ์Œ์ˆ˜๋ฉด ์˜ค๋ฆ„์ฐจ์ˆœ, 0์ด๋ฉด ์›๋ณธ ์ˆœ์„œ ์œ ์ง€๋‹ค.

 

 

 

๋„์›€์ด ๋๋‹ค๋ฉด ๋Œ“๊ธ€์ด๋‚˜ ๊ณต๊ฐ ๋ฒ„ํŠผ ํ•œ ๋ฒˆ์”ฉ ๋ˆ„๋ฅด๊ณ  ๊ฐ€์ฃผ์„ธ์š”! ๋กœ๊ทธ์ธ ์•ˆํ•ด๋„ ๋ฉ๋‹ˆ๋‹ค ^_^

 

๋ฐ˜์‘ํ˜•
COMMENT