엔지니어 블로그

[Leetcode] 1408. String Matching in an Array 본문

카테고리 없음

[Leetcode] 1408. String Matching in an Array

안기용 2025. 1. 8. 21:56


풀이

이 문제는 list 내의 각 원소가 서로 포함 관계인지 파악하면 되는 문제였다. 그래서 반복문을 2개 사용하여 각 원소를 비교하되, 길이가 같거나 기준이 되는 원소의 길이가 길다면 pass하도록 설계했다. 

한번 에러가 나서 확인해보니 중복값이 들어갈 수 있었다. 그래서 set 자료구조를 활용하여 중복값을 제거하는 방식으로 해결했다.

 

코드

class Solution:
    def stringMatching(self, words: list[str]) -> list[str]:
        answer = set([])
        length = len(words)
        for i in range(length):
            for j in range(length):
                if len(words[i]) >= len(words[j]):
                    pass
                elif words[i] in words[j]:
                    answer.add(words[i])
        return list(answer)