알고리즘 공부/백준
(Python)백준 코딩테스트 연습 - 접두사(1141)
HRuler
2023. 3. 9. 13:47
1. 문제
https://www.acmicpc.net/problem/1141
1141번: 접두사
접두사X 집합이란 집합의 어떤 한 단어가, 다른 단어의 접두어가 되지 않는 집합이다. 예를 들어, {hello}, {hello, goodbye, giant, hi}, 비어있는 집합은 모두 접두사X 집합이다. 하지만, {hello, hell}, {giant,
www.acmicpc.net
2. 풀이
import sys
input = sys.stdin.readline
# n : 단어 개수
n = int(input())
# n_l : 단어 리스트
n_l = []
for i in range(n):
n_l.append(input().strip())
n_l.sort()
i = 0
while i < len(n_l) - 1:
if n_l[i+1].startswith(n_l[i]):
del n_l[i]
else:
i += 1
print(len(n_l))
3. 후기
- 본 문제는 오랜만에 문자열에 관한 문제였다.
문자열 문제는 역시나 입력받는 부분에서 항상 틀리게 되는것 같다.
Jupyter notebook을 사용하여 입력을 받을 때는 strip을 신경쓰지 않아도 되지만, sys.stdin.readline을 사용하여 입력을 받게되면 strip을 꼭 사용하는걸 잊지말자.