I am faced with a problem in real world and couldn't get the optimal solution for that.
Imagine that we have several ranges over [0..n] and we want to choose several of them in a way that cover this range in the best way possible, without intersecting with one another. A simplified version of this problem can be found in UVA-10020-Minimal coverage.
For example if n==10 we can have the following ranges to choose from:
And the desired answer would be [1..5] & [7..10].
Obviously greedy is not the right approach in this problem.
I would really appreciate it if someone could help me in solving this problem.