import pulp

# from pyomo.environ import *
m = p.LpProblem("Maximize profit", p.LpMaximize)
print("VARIABLES")
n = int(input("Enter the size of list of variables: "))
numList = list((num) for num in input("Enter the variable names separated by space: ").strip().split())
print("New List: ", numList)
for k in range(n):
   numList[k] = p.LpVariable(numList[k], lowBound=0, cat='Continuous')
# Defining objective function
# problem ask us to maximize the profit
# objective is to maximize z = 2x1 + x2
m += 2*numList[0] + numList[1] 
# constraint1; x2 <= 10
m += numList[1] <= 10
# constraint2; 2x1 + 5x2 <= 60
m += 2*numList[0] + 5*numList[1]  <= 60
# constraint3; x1 + 3x2 + 3x3 <=300
m += numList[0] + numList[1]  <= 18
# constraint4; 3*x1 + x2 <=44
m += 3*numList[0] + numList[1]  <= 44
# linear problem solver of pulp library
print(m)
status = m.solve() # Solver
print(p.LpStatus[status]) # The solution status
for k in range(n):
   print(p.value(numList[k]),end=' ')
print(p.value(m.objective))