0 / 0 / 0
Регистрация: 12.01.2026
Сообщений: 1

Код для задачи на вывод числа

12.01.2026, 22:46. Показов 1444. Ответов 5

Студворк — интернет-сервис помощи студентам
Привет всем, помогите пожалуйста с кодом. Второй день мучаюсь никак не могу написать.
После успешного окончания кулинарных курсов Кеша, который всегда мечтал работать в арктике, устроился на работу на изолированную полярную станцию. Когда он прибыл на станцию вместе с запасом свежих продуктов ее персонал сильно образовался и решил устроить небольшой праздник. {br} На этот праздник Кеша решил приготовить N видов свежевыжатых соков. Для приготовления соков требуется K различных овощей и фруктов, причём в состав одного сока может входить от 1 до K компонентов. Объём чаши соковыжималки, которой будет пользоваться Кеша, а также количество исходных материалов достаточны для того, чтобы приготовить весь объём требуемого сока за один раз.{br} По технологии, чашу соковыжималки надо помыть после приготовления каждого сока. Но Кеше не нравится эта операция, так как она расходует слишком много теплой воды и занимает много времени...Он заметил, что если в состав следующего сока входят все компоненты, требуемые для изготовления предыдущего, то чашу можно и не мыть. Так, после приготовления яблочного сока можно обойтись без мытья чаши перед приготовлением яблочно-ананасового сока. {br} Помогите Иннокентию и рассчитайте минимальное количество операций мытья чаши, которые потребуются для приготовления всех соков. Естественно, после выполнения работы чаша должна быть чистой!

Формат ввода
В первой строке записываются целые величины N и K (1 ⩽ N, K ⩽ 300). Далее следуют N строк, каждая из которых описывает рецепт изготовления одного сока. Первое число этой строки m (1 ⩽ m ⩽ K) — количество компонентов сока. Далее следуют m различных целых чисел, каждое из которых находится в интервале от 1 до K включительно — номера компонентов, которые входят в состав соответствующего сока. Гарантируется, что набор компонентов различен для различных соков.

Формат вывода
Выведите единственное число — минимальное количество операций по мытью чаши.

Пример 1
Ввод
3 2
1 1
1 2
2 1 2
Вывод
2
Пример 2
Ввод
4 4
1 1
1 2
1 3
1 4
Вывод
4
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
12.01.2026, 22:46
Ответы с готовыми решениями:

Вывод числа прописью и наоборот, вывод слова числом
Вечер добрый. Есть программа, которая выводит число прописью до 99.999.999. Как сделать, чтобы она...

Дописать код - вывод индекса числа методом двоичного поиска элемента списка
Добрый день, бьюсь несколько дней над скорее всего простым решением задачи Дано: -...

Задача слишком много хочет: вывод в единственном числе
Вот мой код: # Компьютерный формат даты и времени состоит только из чисел, например:...

5
123 / 118 / 18
Регистрация: 05.08.2021
Сообщений: 520
12.01.2026, 23:58
Чего тут второй день мучиться? Создаем пустой массив и счетчик со значением ноль. В цикле заносим в него подсписки номеров компонентов (или чего там нужно заносить?) и заодно сравниваем текущий подсписок и предыдущий (то есть текущий индекс минус один). Если в предыдущем только компоненты которые есть в текущем - значит мыть не надо. Если нет - плюсуем счетчик. В результате и будет минимальное количество помытий. Как-то вот так оно получается...
0
2903 / 1937 / 210
Регистрация: 05.06.2011
Сообщений: 5,717
14.01.2026, 01:52
В принципе, до десяти (а то и 13) напитков можно тупо полным перебором, коли уж про ограничения времени ничего не сказано.
0
123 / 118 / 18
Регистрация: 05.08.2021
Сообщений: 520
15.01.2026, 11:15
Общее направление решения вроде должно быть таким
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
n,k = int(input('n ')),int(input('k '))
l,c = [],0
 
def f(a,b):    
    for i in a:
        if not i in b:
            return False
    return True
 
for j in range(n):
    m = int(input('m '))
    if m > k:
        print('Компонентов больше положенного')
        break
    mm = [int(input()) for _ in range(m)]
    l.append(mm)
    
for i in range(1,len(l)):
    res = f(l[i - 1],l[i])
    if not res:
        c += 1
 
if not c:
    print(1)
else:    
    print(c + 1)
1
Эксперт Python
8851 / 4502 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
15.01.2026, 20:43
Или так:
Python
1
2
3
4
5
6
7
8
n, k = map(int, input().split())
i, *s = map(int, input().split())
cnt = 1
for _ in range(n-1):
    j, *t = map(int, input().split())
    cnt += not set(s).issubset(set(t))
    s = t
print(cnt)
1
123 / 118 / 18
Регистрация: 05.08.2021
Сообщений: 520
16.01.2026, 12:49
А в моем решении можно избавиться от лишнего цикла. А то аж три - многовато. Правда у меня после этого работать стало чуть медленнее

Добавлено через 31 минуту
Да, что-то скрипт в таком случае медленнее думает
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
n,k = int(input('n ')),int(input('k '))
l,c = [],0
 
def f(a,b):    
    for i in a:
        if not i in b:
            return False
    return True
 
for j in range(n):
    m = int(input('m '))
    if m > k:
        print('Компонентов больше положенного')
        break
    mm = [int(input()) for _ in range(m)]
    l.append(mm)
    if j > 0:
        if not f(l[j - 1],l[j]):
            c += 1
print(1 if not c else c + 1)
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
16.01.2026, 12:49
Помогаю со студенческими работами здесь

Если число равно 0, то человек считает задачу простой, а если оно равно 1, то человек считает задачу сложной
Входные данные В первой строке задано одно целое число n (1≤n≤100) — количество опрошенных...

Как мне исправить код, чтоб вывод был верный, как ниже приведенный
# #Сергей составляет 6-буквенные коды из букв К, А, Л, И, Й. Буква Й может использоваться в коде не...

Код телеграм-бота - вывод сообщения в чат по кнопке
Добрый день всем ! Вот кусок кода в бота телеграмм который отвечает за создание кнопок и...

Код выдает ошибку (вывод изображений с помощью tkinter)
При запуске рисует цифру два и после выдает ошибку, должно рисовать цифру два и четыре в рандомных...

Как перевести код на PyQt в код на PySide?
Собственно сабж. Создается табличка QAbstractTableModel с двумя колонками и в последствии...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

Новые блоги и статьи
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Номеклатура. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru