Мини-урок · перед практикой
Парты
Округляем число парт вверх отдельно для каждого класса.
Как к ней подойти
Разберитесь, как данные попадают в программу, как из них получить ответ и в каком виде его вывести.
Коротко о теме
Программа получает данные через input(), преобразует их в нужный тип и передаёт результат в print(). Сначала разберитесь, какие числа или строки даны, затем запишите вычисление и проверьте формат вывода.
Ключевая идея · Целочисленное округление
Для нечётного числа учеников нужна ещё одна парта, что учитывает прибавление единицы.
Проверьте перед запуском
- Нельзя сначала складывать учеников трёх классов: парты не делятся между кабинетами.
После практики
Сравните свой подход
Ниже - готовое решение, другой способ, если он есть, и важные детали проверки.
Ваше принятое решение
Рекомендуемое решение: Целочисленное округление
Для нечётного числа учеников нужна ещё одна парта, что учитывает прибавление единицы.
a = int(input())
b = int(input())
c = int(input())
print((a + 1) // 2 + (b + 1) // 2 + (c + 1) // 2)
Время: O(1). Память: O(1).
Другой способ: Полные пары и одиночные места
Сначала считаем парты для пар учеников, затем добавляем одну для оставшегося ученика.
desks = 0
for _ in range(3):
pupils = int(input())
desks += pupils // 2
if pupils % 2:
desks += 1
print(desks)
Время: O(1). Память: O(1).