[백준] 도비의 난독증 테스트
2025. 3. 19. 22:36ㆍ코딩테스트
문제보기 - https://www.acmicpc.net/problem/2204
문제명 - 도비의 난독증 테스트
난이도 - B1
문제유형 - 정렬
풀이일자 - 25.03.19
📌 문제 탐색하기
- 첫 줄에 입력 개수 n (2≤ n ≤ 1000)이 주어짐
- 이후 n개의 단어가 각 줄에 주어지며 각 단어의 길이는 최대 20자임
- 마지막 줄에 0이 입력되면서 종료
- 각 줄에 각 테스트케이스에서 사전상 가장 앞서는 단어를 출력해야 함
🛠 시간복잡도 확인
- 정렬을 사용하므로 시간 복잡도는 O(n log n)
- n이 최대 1000개 이므로 가능!
📌 코드 설계하기
- n, n개 단어 입력받기
- sys.stdin.readline().strip()
- 0을 만나면 입력멈추기 = 0 만날 때 까지 반복 -> while True
- if n == 0 :
break
- if n == 0 :
- 대소문자 무시하고 정렬하기
- sort(key=str.lower)
- 가장 첫번째 단어 출력하기
- print(words[0])
📌 정답 코드(1회차)
import sys
# 1. 입력받기
while True:
n = int(sys.stdin.readline().strip())
if n == 0: # 0이면 반복 멈추기
break
words = [sys.stdin.readline().strip() for _ in range(n)]
# 2. 대소문자 무시하고 정렬하기
words.sort(key=str.lower)
# 3. 가장 첫번째 단어 출력하기
print(words[0])
'코딩테스트' 카테고리의 다른 글
[백준] 숫자 게임 (0) | 2025.03.21 |
---|---|
[백준] 결혼 (0) | 2025.03.20 |
[백준] 촌수계산 (0) | 2025.03.18 |
[백준] 죽음의 게임 (0) | 2025.03.16 |
[백준] 순열 사이클 (0) | 2025.03.15 |