Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 23.04.2020
Сообщений: 12

Задача с использованием модуля itertools

23.04.2020, 17:51. Показов 1383. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Нужно решить с использованием itertools.
Условие:
На вход подается три числа f, s, d. f - количество первых блюд в кафе, s– количество вторых блюд, d – количество напитков. Выведите сколько всего вариантов комплексного обеда можно составить из данного набора блюд. Набор может состоять из двух (первое + второе, первое + напиток, второе + напиток) или из трех блюд. Выведите количество таких наборов и все наборы каждый на отдельной строке. Для того чтобы не перепутать перед номером блюда ставьте букву f, s, d - которые обозначают вид блюда.

Входные данные: 2 1 2

Выходные данные:

12

f1 s1

f2 s1

f1 d1

f1 d2

f2 d1

f2 d2

s1 d1

s1 d2

f1 s1 d1

f1 s1 d2

f2 s1 d1

f2 s1 d2
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
23.04.2020, 17:51
Ответы с готовыми решениями:

Как сделать permutations из модуля itertools без повторений, если элементы в исходном списке повторяются?
Как сделать permutations из модуля itertools без повторений, если элементы в исходном списке повторяются? Допустим есть список x = ...

Использование модуля itertools
Нужно использовать модуль itertools. На вход подается три числа f, s, d; f - количество первых блюд в кафе, s - количество вторых блюд, d -...

С использованием модуля CRT
Помогите, пожалуйста, решить задачу(язык -- Паскаль) Организовать перемещение буквы «Ж» синего цвета по желтому экрану по следующей...

1
0 / 0 / 0
Регистрация: 03.02.2022
Сообщений: 2
03.02.2022, 05:33
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import itertools
f = ['f' + str(i) for i in range(1, int(input())+1)]
s = ['s' + str(i) for i in range(1, int(input())+1)]
d = ['d' + str(i) for i in range(1, int(input())+1)]
a = f, s, d
 
two = []
for i in a:
    for j in i:
        two.append(j)
two_options = list(itertools.combinations(two, 2))
 
ff, ss, dd = [], [], []
for f1 in tuple(f):
    ff.append(f1)
for s1 in tuple(s):
    ss.append(s1)
for d1 in tuple(d):
    dd.append(d1)
elimination_f = list(itertools.permutations(ff,2))
elimination_s = list(itertools.permutations(ss,2))
elimination_d = list(itertools.permutations(dd,2))
 
two_options = [x for x in two_options if x not in elimination_f]
two_options = [x for x in two_options if x not in elimination_s]
two_options = [x for x in two_options if x not in elimination_d]
 
for i in two_options:
    for j in i:
        print(j, end=" ")
    print()
 
three_options = itertools.product(f, s, d)
for i in three_options:
    for j in i:
        print(j, end=' ')
    print()
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.02.2022, 05:33
Помогаю со студенческими работами здесь

python itertools
есть 2 задания которые надо решить через itertools без циклов никак не могу понять их

Перебор itertools
Добрый день, хочу получить значение точки после перебора product itertools в двух переменных y,z в точке x = > например x = (5, 6)...

модуль itertools
Объясните, пожалуйста, работу combination, permutations и product

С использованием разработанного собственного модуля
Напишите программу работы с использованием разработанного собственного модуля для нахождения суммы, произведения и разности 2х чисел. Я не...

Комплексные числа с использованием модуля
здравствуйте) помогите плиз отладить программу: 3адание:Входные данные Каждое из комплексных чисел задается значением своей...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru