Files
exams/algorithms/labs/lab8/code/dp/1.py
2025-10-01 22:55:09 +03:00

15 lines
431 B
Python

def word_break(s, wordDict):
dp = [True] + [False] * len(s)
for i in range(1, len(s) + 1):
for w in wordDict:
j = i - len(w)
if j >= 0 and dp[j] and s[j:i] == w:
dp[i] = True
break
return dp[-1]
if __name__ == "__main__":
print(word_break("applepenapple", ["apple", "pen"]))
print(word_break("catsandog", ["cats", "dog", "sand", "and", "cat"]))