C語言重構 115 不同的子串行

2021-10-25 09:50:27 字數 935 閱讀 4399

所有題目源**:git位址

題目

給定乙個字串 s 和乙個字串 t ,計算在 s 的子串行中 t 出現的個數。

字串的乙個 子串行 是指,通過刪除一些(也可以不刪除)字元且不干擾剩餘字元相對位置所組成的新字串。(例如,"ace" 是 "abcde" 的乙個子串行,而 "aec" 不是)

題目資料保證答案符合 32 位帶符號整數範圍。

示例 1:

輸入:s =

"rabbbit"

, t =

"rabbit"

輸出:3

解釋:如下圖所示, 有 3 種可以從 s 中得到 "rabbit" 的方案。

(上箭頭符號 ^ 表示選取的字母)

rabbbit^^

^^^^

rabbbit^^

^^^^

rabbbit^^

^^^^

示例 2:

輸入:s =

"babgbag"

, t =

"bag"

輸出:5

解釋:如下圖所示, 有 5 種可以從 s 中得到 "bag" 的方案。

(上箭頭符號 ^ 表示選取的字母)

babgbag^^

^babgbag^^

^babgbag^^

^babgbag

^^^babgbag

^^^0

<= s.length, t.length <=

1000

s 和 t 由英文本母組成

方案:
class

solution

for(

int i =

0; i < slen; i++)}

return dp[tlen]

[slen];}

};

複雜度計算

115 不同的子串行

題目.high dp用熟了反而覺得簡單了。s字串增加乙個字元,要麼這個字元與t的最後乙個字元相同,要麼不相同 package main import fmt func numdistinct s string t string int iflen t 0 dp make int len s 1 fo...

115 不同的子串行

給定乙個字串s和乙個字串t,計算在s的子串行中t出現的個數。字串的乙個 子串行 是指,通過刪除一些 也可以不刪除 字元且不干擾剩餘字元相對位置所組成的新字串。例如,ace 是 abcde 的乙個子串行,而 aec 不是 題目資料保證答案符合 32 位帶符號整數範圍。示例 1 輸入 s rabbbit...

領扣 115 不同的子串行

給定乙個字串 s 和乙個字串 t,計算在 s 的子串行中 t 出現的個數。乙個字串的乙個子串行是指,通過刪除一些 也可以不刪除 字元且不干擾剩餘字元相對位置所組成的新字串。例如,ace 是 abcde 的乙個子串行,而 aec 不是 我的 static int x class solution fo...