Hard
Given an array of words nums (encoded as lengths) and a max width target, pack words into lines greedily (as many as fit with at least one space between them). Return the number of lines needed.
Input: wordLengths = [4,2,3,7,1,1,1,3,2,2,1], maxWidth = 8 Output: 5
Input: wordLengths = [1,1,1,1], maxWidth = 3 Output: 2