Backend
home
🧪

[백준] 도비의 난독증 테스트

생성일
2025/06/08 12:35
태그
BaekJoon
게시일
2025/06/08
최종 편집 일시
2025/06/11 14:05

문제

해결 방안 고민

Arrays.sort() 를 활용하면 될 것이라고 생각했으나 실제로 활용해본 결과 출력값과 다른 결과가 나왔다.
이는 대소문자를 구분하여 배열의 요소들을 정렬하기 때문이다.
그렇기 때문에 대소문자를 구분하지 않는 선에서 정렬을 할 필요가 있다.

해결 방법

대소문자는 구분하지 않기 위해 Comparator는 String.CASE_INSENSITIVE_ORDER 를 사용한다.
정렬이 모두 끝나면 배열의 0번째 요소를 StringBuilder에 추가하면 된다.

코드

package algo250608; import java.util.*; import java.io.*; // 백준 - 도비의 난독증 테스트 (브론즈 1) public class Baek2204 { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); StringBuilder sb = new StringBuilder(); while (true) { int T = Integer.parseInt(br.readLine()); if (T == 0) { break; } String[] words = new String[T]; for (int i = 0; i < T; i++) { words[i] = br.readLine(); } Arrays.sort(words, String.CASE_INSENSITIVE_ORDER); // 대소문자 구분하지 않기 위해 String.CASE_INSENSITIVE_ORDER 활용 sb.append(words[0]).append("\n"); } System.out.println(sb); } }
Java
복사