You can simplify your question to partitioning a k-sized array into N smaller continuous subarrays. The task is to minimize the difference between the largest and smallest sum of the subarrays. This is a Multi-Way Number Partitioning Problem.