В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
Радость2129
Радость2129
14.12.2020 01:46 •  Информатика

В новогодний сладкий подарок нужно положить ровно N
конфет. На складе хранятся конфеты, собранные по одной штуке и по три штуки в одной упаковке. Всего имеется
A
упаковок по одной конфете и
B
упаковок по три конфеты. Определите, какое наибольшее число подарков можно собрать из имеющихся конфет, если упаковки из трёх конфет нельзя вскрывать и разделять на отдельные конфеты.

Показать ответ
Ответ:
ekaterina9919
ekaterina9919
20.12.2021 06:00

n = int(input())

a = int(input())

b = int(input())

left = 0

right = (a + 3 * b) // n + 2

while right - left > 1:

   mid = (left + right) // 2

   count3 = n // 3 * mid

   count1 = n % 3 * mid

   if a > count1:

       count3 -= (a - count1) // 3

   if count1 <= a and count3 <= b:

       left = mid

   else:

       right = mid

print(left)

Объяснение:

Перебираем число подарков, проверяем, можем ли мы сделать столько подарков.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота