Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 27, 2016 21:15:34

ampermetr
Зарегистрирован: 2016-01-27
Сообщения: 34
Репутация: +  1  -
Профиль   Отправить e-mail  

Помогите составить алгоритм

Есть список, содержащий вложенные списки вида:

 [[10, "zero", 76]
[10, "fourth1", 4]
[50, "third1", 100]
[20, "third2", 69]
[80, "second1", 55]
[200, "second2", 1000]
[600, "first", 20]
[100, "second3", 90]
[15, "fourth2", 0]
[45, "third3", 0]
[900, "second4", 95]
[90, "second2", 1000]
[60, "third1", 100]]
Первые значения списков взаимосвязаны формулам
secondX = x*firstX and q*firstY
thirdX = y*secondX and z*secondY and a*secondZ
fourthX = b*thirdX and c*thirdY and d*thirdZ
Своего рода рецепт:
бутерброд = 2 куска хлеба + кусок колбасы + сыр + 3 ветки укропа
кусок хлеба = 5 муки + 2 воды + 1 дрожжей
кусок колбасы = 2 крысиных головы + 5 газет + приправа
Третьи значения вводятся пользователем и являются не отрицательными целыми числами.
Задача приготовить 10 бутербродов с сыром и 15 бутербродов с ветчиной из хлеба, сыра и т.д. Если колбасы не хватает, то готовим её из газет и крысиных голов и т.д.
Если не хватает дрожжей на то, чтобы приготовить всё недостающее количество хлеба на бутерброды с сыром, то готовим сколько возможно и из оставшихся продуктов готовим бутерброды с ветчиной.
Количество рецептов и количество компонентов каждого рецепта меняется и заранее не известны.
Как объяснить понятнее не знаю, к сожалению.

Помогите записать это на питоне.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version