class Solution {
public:
bool wordBreak(string s, vector<string>& wordDict) {
auto set=unordered_set<string>();
for(string word:wordDict)
{
set.insert(word);
}
auto dp =vector<bool>(s.size()+1);
dp[0]=true;
for(int i=1;i<=s.size();++i)
{
for(int j=0;j<i;++j)
{
if(dp[j]&&set.find(s.substr(j,i-j))!=set.end())
{
dp[i]=true;
break;
}
}
}
return dp[s.size()];
}
};
才发现是leetcode不是leecode
递推思想,遍历字符串,检查能否到达当前字符,能则dp为true
substr函数 find函数也要了解一下