139. Word Break
# Medium
Last updated
# Medium
Last updated
class Solution:
def wordBreak(self, s: str, wordDict: List[str]) -> bool:
canSegment = [False]*(len(s)+1)
canSegment[0] = True
for i in range(1, len(s)+1):
for j in range(0, i):
if canSegment[j] == True and s[j:i] in wordDict:
canSegment[i] = True
break
canSegment[i] = False
return canSegment[len(s)]class Solution {
public boolean wordBreak(String s, List<String> wordDict) {
boolean[] canSegment = new boolean[s.length() + 1];
Arrays.fill(canSegment, false);
canSegment[0] = true;
for(int end = 1; end <= s.length(); end ++)
for(int start = 0; start < end; start ++) {
if(canSegment[start] && wordDict.contains(s.substring(start, end))) {
canSegment[end] = true;
break;
}
}
return canSegment[s.length()];
}
}