1.暴力法超時
class
solution
if(i==s.
size()
||i==t.
size()
)return
;//到任意末端返回
if(s[i]
!=t[i]
)else
return;}
public
:int
numdistinct
(string s, string t)
};
2.動態規劃
從後往前遍歷
dp[i][j]代表 s[i]到s[size-1]的字串中有子串為t[j]到t[size-1]的個數
s[i]==s[j] 時 dp[i][j]=dp[i+1][j+1]+dp[i+1][j]
s[i]!=s[j]時 dp[i][j]=dp[i+1][j]
當t為空串時候 則個數為1 0=class
solution
}return dp[0]
[0];}};
力扣每日一題 376 擺動序列
如果連續數字之間的差嚴格地在正數和負數之間交替,則數字序列稱為擺動序列。第乙個差 如果存在的話 可能是正數或負數。少於兩個元素的序列也是擺動序列。例如,1,7,4,9,2,5 是乙個擺動序列,因為差值 6,3,5,7,3 是正負交替出現的。相反,1,4,7,2,5 和 1,7,4,5,5 不是擺動序...
每日一題 力扣376 擺動序列
如果連續數字之間的差嚴格地在正數和負數之間交替,則數字序列稱為擺動序列。第乙個差 如果存在的話 可能是正數或負數。少於兩個元素的序列也是擺動序列。例如,1,7,4,9,2,5 是乙個擺動序列,因為差值 6,3,5,7,3 是正負交替出現的。相反,1,4,7,2,5 和 1,7,4,5,5 不是擺動序...
力扣每日一題 62 不同路徑
這題比較簡單,至少能想到動態規劃和排列組合兩種方法。明顯,到達第 i 行 j 列的點的路勁數為到達第 i 1 行 j 列的路勁數與到達 i 行 j 1 列的路勁數之和。而第一行和第一列的點只有一條路勁,即不停向右或不停向下。由此,可以使用乙個 m n 維的dp陣列進行動態規劃,dp m 1 n 1 ...