1641 統計字典序母音字串的數目

2021-10-11 11:10:27 字數 942 閱讀 5699

題目描述:給你乙個整數 n,請返回長度為 n 、僅由母音 (a, e, i, o, u) 組成且按 字典序排列 的字串數量。

字串 s 按 字典序排列 需要滿足:對於所有有效的 i,s[i] 在字母表中的位置總是與 s[i+1] 相同或在 s[i+1] 之前。

解題思路:用dp[i][j]表示以i結尾的長度為j的字串,他的解全部可以由長度為j-1的字串遞推過來,為長度為j-1且結尾字元的字母順序在i前面或者和i相等,然後同樣的方法寫出dp[i+1][j]的遞推式,兩式相減可以得到簡化的遞推式,dp[i+1][j]=dp[i][j]+dp[i+1][j-1],這個遞推式也可以理解為,以字母i+1結尾的長度為j的字串可以由兩部分得到,(1)將長度為j且結尾字元為i的字串的結尾字元都替換為i+1,即dp[i][j],(2)結尾字元為i+1,長度為j-1末尾加上乙個i+1得到,即dp[i+1[j-1,**如下:

class

solution

:def

countvowelstrings

(self, n:

int)

->

int:

dp =[[

1]* n for _ in

range(5

)]for i in

range(1

,5):

for j in

range(1

, n)

: dp[i]

[j]= dp[i-1]

[j]+ dp[i]

[j-1

]return

sum(

[d[-1]

for d in dp]

)

統計字典序母音字串的數目

1641.統計字典序母音字串的數目 難度中等40 給你乙個整數 n 請返回長度為 n 僅由母音 a e i o u 組成且按 字典序排列 的字串數量。字串 s 按 字典序排列 需要滿足 對於所有有效的 i s i 在字母表中的位置總是與 s i 1 相同或在 s i 1 之前。示例 1 輸入 n 1...

字串 統計母音

description統計每個母音字母在字串 現的次數。input輸入資料首先包括乙個整數n,表示測試例項的個數,然後是n行長度不超過100的字串。output對於每個測試例項輸出5行,格式如下 a num1 e num2 i num3 o num4 u num5 多個測試例項之間由乙個空行隔開。請...

字串之統計母音

description 統計每個母音字母在字串中出現的次數。input 輸入資料首先包括乙個整數 n,表示測試例項的個數,然後是 n行長度不超過 100的字串。output 對於每個測試例項輸出 5行,格式如下 a num1 e num2 i num3 o num4 u num5 多個測試例項之間由...