問題:https://leetcode.com/problems/word-break/
問題のパーティションタイプ。
クラス解決{ パブリック: ブール wordBreak(ストリング S、ベクトル< ストリング >&wordDict){ int型 N = s.size()。 unordered_set < 文字列 > 辞書。 以下のために(int型 i = 0 ; iはwordDict.size()<; I ++のを) { dict.insert(wordDict [I])。 } ベクトル < ブール > DP(N + 1、偽)。 DP [ 0 ] = 真; 以下のために(int型 i = 0 ; iがn <; iは++ ) { ための(int型 J = 0 ; J <= I; J ++ ) { int型 LEN = I - J + 1 。 文字列の単語= s.substr(J、LEN); // coutの<<単語<<てendl; 場合(!dict.find(ワード)= dict.end()) { 場合(DP [J]) { DP [I + 1 ] = 真。 破ります; } } } } 戻りDP [n]は、 } }。