Re: [閒聊] 每日leetcode
看板Marginalman作者DJYOMIYAHINA (通通打死)時間11月前 (2025/01/04 20:02)推噓1(1推 0噓 0→)留言1則, 1人參與討論串1243/1554 (看更多)
看了一下大家好像差不多
不過後面算中間字母數的地方 原本想要用26*n的perfix cnt arr來找
想了想挺白吃的
還是先這樣就好
def countPalindromicSubsequence(self, s: str) -> int:
n = len(s)
l_find = [-1 for _ in range(26)]
r_find = [-1 for _ in range(26)]
for i in range(n):
if l_find[ord(s[i])-ord('a')] == -1:
l_find[ord(s[i])-ord('a')] = i
for i in range(n-1, -1, -1):
if r_find[ord(s[i])-ord('a')] == -1:
r_find[ord(s[i])-ord('a')] = i
ans = 0
for i in range(26):
if l_find[i]+1<n and r_find[i] != -1:
ans += len(set(s[l_find[i]+1:r_find[i]]))
return ans
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.228.146.144 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1735992141.A.331.html
推
01/04 20:04,
11月前
, 1F
01/04 20:04, 1F
討論串 (同標題文章)
完整討論串 (本文為第 1243 之 1554 篇):