엔지니어 블로그

[Leetcode] 3042. Count Prefix and Suffix Pairs I 본문

카테고리 없음

[Leetcode] 3042. Count Prefix and Suffix Pairs I

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


풀이

우선 제시 된 조건처럼 isPrefixAndSuffix를 정의한다. 내부에서는 str1이 str2에 prefix,suffix를 동시에 만족하는지 확인한다. 

이후 countPrefixSuffixPairs에서 isPrefixAndSuffix 를 호출하여 가장 앞의 원소와 뒤의 원소들을 차례차례 비교해가며 몇개의 case가 만족하는지 체크하면 된다.

 

이 문제는 아무 답지의 도움 없이 혼자서 풀어낸 첫 leetcode 문제여서 감회가 새롭다. 열심히 해서 더 높은 레벨의 문제들도 척척 푸는 사람이 되고싶다..!

코드

class Solution:
    def countPrefixSuffixPairs(self, words: list[str]) -> int:
        answer = 0
        while len(words) > 1:
            cur = words.pop(0)
            for i in words:
                if self.isPrefixAndSuffix(cur,i):
                    answer += 1
        return answer

    def isPrefixAndSuffix(self,str1,str2) -> bool:
        length = len(str1)
        if str2[:length] == str1 and str2[-length:] == str1:
            return True
        return False