国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

115. Distinct Subsequences

2019-11-09 20:18:50
字體:
來源:轉載
供稿:網友

對字符串的dp還是挺難想出來的,其實情況往往都是自己想復雜了。哎 說說這一道題,dp【i】【j】 分別代表i是t,子串 。 j是原串 如果t i != s j,Dp【i】【j】 = dp【i】【j -1】,因為既然不匹配,那么原串多一個字符也不影響,所以就等于上一個j-1

如果相等,就是匹配的話,分兩個情況 1,t i 和s j匹配,那么dp【i】【j】 就加上dp【i - 1】【j - 1】 2,雖然t i 和s j匹配,但是我們不把他們匹配的話,就是說加入t i已經跟之前s 0 到 s j-1 匹配了,就是多一個sj字符而已,所以dp【i】【j】 就加上dp【i】【j - 1】

2刷的時候要重新想, 而且要刷那個只用一維vector的那個dp。

class Solution {public: int numDistinct(string s, string t) { int n = s.length(); int m = t.length(); vector<vector<int>> dp(m + 1, vector<int>(n + 1, 0)); for(int j = 0; j <= n; ++ j) dp[0][j] = 1; for(int j = 1; j <= n; ++ j) for(int i = 1; i <= m; ++ i) dp[i][j] = t[i - 1] == s[j - 1] ? dp[i - 1][j - 1] + dp[i][j - 1] : dp[i][j - 1]; return dp[m][n]; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西宁市| 通渭县| 峨眉山市| 大英县| 革吉县| 鄢陵县| 云安县| 敦化市| 卢龙县| 永春县| 应城市| 武功县| 葵青区| 福建省| 科技| 确山县| 新乡县| 太康县| 巴里| 轮台县| 钟山县| 繁峙县| 洱源县| 武陟县| 姚安县| 河西区| 美姑县| 九江县| 洛南县| 延津县| 宁陕县| 曲阳县| 厦门市| 肃宁县| 望奎县| 科技| 吉安县| 金湖县| 伊宁市| 固镇县| 兴海县|