Dynamic programming
1-D cost function