Word-Break solution using dynamic programming