January 04, 2025
이 문제는 주어진 문자열에서 길이가 3인 Palindromic Subsequences의 개수를 구하는 문제다. 2025년 첫 문제다.
class Solution:
def countPalindromicSubsequence(self, s: str) -> int:
first = {}
last = {}
for i, char in enumerate(s):
if char not in first:
first[char] = i
last[char] = i
result = 0
for char in set(s):
if first[char] < last[char]:
unique = len(set(s[first[char] + 1:last[char]]))
result += unique
return result
Constraints:
- 3 <= s.length <= 10^5
- s consists of only lowercase English letters.