LeetCode 1220 統計母音字母序列的數目

2022-09-18 12:12:16 字數 1090 閱讀 2559

給你乙個整數 n,請你幫忙統計一下我們可以按下述規則形成多少個長度為 n 的字串:

字串中的每個字元都應當是小寫母音字母('a', 'e', 'i', 'o', 'u')

每個母音 'a' 後面都只能跟著 'e'

每個母音 'e' 後面只能跟著 'a' 或者是 'i'

每個母音 'i' 後面 不能 再跟著另乙個 'i'

每個母音 'o' 後面只能跟著 'i' 或者是 'u'

每個母音 'u' 後面只能跟著 'a'

由於答案可能會很大,所以請你返回 模 10^9 + 7 之後的結果。

示例 1:

輸入:n = 1

輸出:5

解釋:所有可能的字串分別是:"a", "e", "i" , "o" 和 "u"。

示例 2:

輸入:n = 2

輸出:10

解釋:所有可能的字串分別是:"ae", "ea", "ei", "ia", "ie", "io", "iu", "oi", "ou" 和 "ua"。

示例 3:

輸入:n = 5

輸出:68

1 <= n <= 2 * 10^4

解這道題可以用狀態機的思維,通過題意得知了五條規則,即

a-> e

e-> a, i

i-> a, e, o, u

o->i, u

u->a

換個角度視角看下,可得下面五條遞推

ai = ei-1 + ii-1 + ui-1

ei = ai-1 + ii-1

ii = ei-1 + oi-1

oi = ii-1

ui = ii-1 + oi-1

使用兩個陣列記錄i次母音的個數和i-1次母音的個數,便可推出第n次字母序列的個數。

本人認為此題是困難題的原因主要是大數的處理,需要每次計算後均取模,否則十分容易越界。

LeetCode 統計重複個數

q 由 n 個連線的字串 s 組成字串 s,記作 s s,n 例如,abc 3 abcabcabc 如果我們可以從 s2 中刪除某些字元使其變為 s1,則稱字串 s1 可以從字串 s2 獲得。例如,根據定義,abc 可以從 abdbec 獲得,但不能從 acbbe 獲得。現在給你兩個非空字串 s1 ...

統計多維陣列php PHP多維陣列中統計元素個數

array 0 array 0 array 0 array id 12 name 1 1 array id 28 name 2 1 array 0 array id 121 name 2 1 array id 281 name 4 我想統計name對應的值出現的次數,比如name 2 出現的次數是2...

C AE分割槽統計像元數量

因為近期需要進行對某一區域內進行像元數量的統計,而arcgis內建的分割槽統計功能輸出的又是乙個柵格資料感覺不是我想要的,所以就自己編了這樣乙個小功能。話不多說,開始進入正題。按照老習慣,每次要編 之前先梳理一下思路 1 獲取柵格資料和向量資料 柵格資料是要統計的物件,向量資料是統計的區域 2 獲取...