https://cococoding.com/how-to-formulate-a-linear-programming-problem/