알고리즘 문제 풀이: 파이썬/BOJ

[BOJ_1141] 접두사

hueco 2023. 10. 6.

 

📌 문제 링크: https://www.acmicpc.net/problem/1141

 

1141번: 접두사

접두사X 집합이란 집합의 어떤 한 단어가, 다른 단어의 접두어가 되지 않는 집합이다. 예를 들어, {hello}, {hello, goodbye, giant, hi}, 비어있는 집합은 모두 접두사X 집합이다. 하지만, {hello, hell}, {giant,

www.acmicpc.net

 

내 풀이(Success) :

 

🧐 Review:

 문제를 풀고 나서 다른 풀이들을 확인해 보니 슬라이싱을 이용한 풀이가 많았다. 해당 내용을 정리해 둔 문서를 다시 읽어봐야겠다.

 

🚩 Idea:

 - 중복된 문자열을 확인하는 과정을 줄이기 위해 집합(set)에 문자들을 담아 중복된 문자열을 제거한다.

 - 위의 처리를 거친 문자열을 문자열의 길이의 내림차순으로 정렬하면, 길이가 가장 긴 첫 번째 원소는 무조건 다른 문자열의 접두어가 되지 않으므로 해당 문자열을 answer에 초기값으로 담고, 그다음 문자열부터 문자열을 체크하는 과정을 실행한다.

 - 반복문에서 문자열의 같은 인덱스의 문자들을 비교하고, 같은 경우에는 count를 증가시킨다.

 - count의 값이 비교하려는 문자열의 길이와 일치한다면, 해당 문자열은 접두사X 집합에 포함될 수 없다.

'알고리즘 문제 풀이: 파이썬 > BOJ' 카테고리의 다른 글

[BOJ_14713] 앵무새  (1) 2023.10.08
[BOJ_2531] 회전 초밥  (1) 2023.10.07
[BOJ_15903] 카드 합체 놀이  (0) 2023.10.06
[BOJ_2841] 외계인의 기타 연주  (0) 2023.10.03
[BOJ_7576] 토마토  (2) 2023.10.02

댓글