단어의 리스트가 주어지는데 , 이 때 단어의 대소문자를 구분하지 않고 사전순으로 가장 앞서는지 구하는 문제입니다.
예를 들어 , apPle은 Bat보다 앞서지만 AnT보다는 뒤에 있습니다.
이 문제를 풀기 위해서는 대소문자를 구분하지 않은 단어 정렬을 구현하는 것이 핵심입니다.
그렇기 위해서는 입력되는 단어를 모두 lower case로 바꾸어 저장한 후 , 정렬하면 됩니다.
단 이 때 lower case로 바꾼 단어를 출력하는 것이 아닌 원래의 단어를 출력해야 하기 때문에 , 이 값을 같이 저장해 두어야 합니다.
문제의 예시를 통해 더 구체적으로 살펴보겠습니다.
Cat
fat
bAt
이런 문자열들이 들어온다고 하면, 각 문자열을 lower case로 변환한 후 원래 문자열과 함께 저장합니다.
arr라는 배열에 저장한다고 하면 ,
[['cat', 'Cat'], ['fat', 'fat'] , ['bat','bAt']]
이렇게 저장됩니다.
🍯 TIP ! python에서 문자열을 lower case로 저장하기 위해 lower() 메소드를 사용할 수 있습니다. 언어 별로 lower case로의 변환을 지원하는 라이브러리들이 존재하는 경우가 있으니 미리 익혀두면 좋습니다.! 없다면 코드 자체를 익혀두면 좋습니다.
이후 배열을 정렬합니다.
이 중 가장 첫 원소의 두번째 원소(원래 문자열)을 출력하면 정답을 만족할 수 있습니다.
arr.sort()
print(arr[0][1])