개발공부/백준

백준 2204번: 도비의 난독증 테스트(자바)

장아장 2022. 10. 13. 11:00

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

 

2204번: 도비의 난독증 테스트

꿍은 도비에게 영어단어들을 제시한 후 어떤 단어가 대소문자를 구분하지 않고 사전순으로 가장 앞서는지 맞추면 양말을 주어 자유를 얻게해준다고 하였다. 하지만 인성이 좋지 않은 꿍은 사실

www.acmicpc.net

Source Code : https://github.com/JangAJang/Study/blob/main/2204.도비의%20난독증%20타스트/src/Main.java

간단한 정렬 문제였다. 문자열을 정렬하기 위해 compareTo를 사용하면 되는 거였다. 

이 compareTo를 잠깐 알아보자면

기준변수.compareTo(상대변수) 의 상태로 사용하는데 결과는 아래와 같다. 

기준 변수 > 상대 변수 return 1
기준 변수 == 상대변수 return 0
기준 변수 < 상대 변수 return -1

이 값을 사용할 방법을 생각해보면, Comparator를 사용할 수 있다. 

Arrays.sort(arr, new Comparator<String>() {
    @Override
    public int compare(String o1, String o2) {
        return o1.toLowerCase().compareTo(o2.toLowerCase());
    }
});

Comparator를 잠깐 이야기 해보자면, 오름차순으로 정리를 기본으로 하고 compare함수의 return이 양수면 입력된 두 String의 배열 위치를 바꾸어주고, 아니라면 위치를 바꾸지 않는다. 

 

이를 이용해 배열을 하고, 배열의 0번째 값을 출력시켜주면 된다. 

'개발공부 > 백준' 카테고리의 다른 글

백준 2206번: 벽 부수고 이동하기  (0) 2022.10.17
백준 1697번: 숨바꼭질  (1) 2022.10.15
백준 2178번: 미로 탐색  (1) 2022.10.14
백준 3015번: 오아시스 재결합  (1) 2022.10.13