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

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

115. Distinct Subsequences

2019-11-09 21:17:40
字體:
來源:轉載
供稿:網友

對字符串的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]; }};
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新竹县| 永胜县| 绥滨县| 崇信县| 涞水县| 崇仁县| 达拉特旗| 麦盖提县| 临高县| 镇赉县| 自治县| 连州市| 吉首市| 麻栗坡县| 新田县| 揭西县| 满城县| 厦门市| 赞皇县| 南涧| 伊春市| 安阳县| 灌阳县| 阿城市| 甘孜县| 天祝| 开远市| 合作市| 丁青县| 桂阳县| 平定县| 雷山县| 南召县| 宁城县| 屯昌县| 永安市| 柳林县| 绍兴市| 闻喜县| 肥西县| 姚安县|