[動的プログラミング] 115の個別の部分配列をleetcode

問題:https://leetcode.com/problems/distinct-subsequences/

        文字は、被写体の種類と一致します。

クラスのソリューション{
 パブリック
    ベクトル <ベクトル< int型 >> DP;
    INT numDistinct(文字列&S、文字列&T、int型 I、int型のJ){
         場合(J == t.size())リターン 1 もし(I == s.size())の戻り 0 ;
        もし(DP [I] [J] = - !1リターンDP [I] [J]。
        もし(S [I] == T [J])
        { 
            戻り DP [I] [J] = numDistinct(S、T、I + 1、J + 1)+ numDistinct(S、T、I + 1 、J)。
        } 
        
        { 
            戻り DP [I] [J] = numDistinct(S、T、I + 1 、J)。
        } 
    } 
    int型 numDistinct(ストリング S、文字列T){ 
        dp.resize(s.size()、ベクトル < INT >(t.size() - 1 ))。
        戻り numDistinct(S、T、00 ); 
    } 
}。

 

おすすめ

転載: www.cnblogs.com/fish1996/p/11330015.html