**Problem Statement:**
Given the required input arguments, write an efficient algorithm to solve the **Word Break** problem. Implement the required logic as specified by standard definitions for this classic algorithmic challenge.
**Hint / Expected Approach:**
dp[i] = any dp[j] where s[j..i] in dict
**Edge Cases to Consider:**
- (1) Empty string
- (2) Word not in dict at all
- (3) Overlapping words