Решить задачу со словарями но можно и другой тип данных выбрать

В столовой на выбор предлагается 3 первых блюда, 3 горячих и 3 напитка. У каждой позиции есть своя цена. Сколько комбинаций (суп, горячее и напиток) можно составить исходя из количества денег у покупателя. Я составил 3 словаря и не понимаю как их все прибрать.

amount_of_money = int(input('amount_of_money? '))


Soup = dict(chicken_soup = 201, 
            Borscht = 301, 
            Kharcho = 401 
            )

Second_course = dict(
                    buckwheat_with_chicken = 202,
                    beef_stroganoff = 302,
                    Fish_with_rice = 402
                        )
    
Drinks = dict(
            Moors = 203,
            Lemonade = 303,
            Juice = 403
            )

Ответы (1 шт):

Автор решения: Zhihar

когда не знаете как перебирать - перебирайте В ЛОБ:

res = []

for soup in Soup.items():
    for s_cource in Second_course.items():
        for drink in Drinks.items():
            money = soup[1] + s_cource[1] + drink[1]

            if money <= amount_of_money:
                res.append((soup[0], s_cource[0], drink[0]))

print(res)

конечно можно все оптимизировать и причесать, но принцип будет тот же

→ Ссылка