• Задача 1. Компот (20 баллов)
    Имя входного файла: стандартный ввод
    Имя выходного файла: стандартный вывод
    Ограничение по времени: 1 секунда
    Ограничение по памяти: 256 мегабайт
    У Николая есть a лимонов, b яблок и c груш. Он решил приготовить из них
    компот. По рецепту фрукты должны быть в соотношении 1 : 2 : 4, то есть на каж-
    дый лимон в компоте должно быть ровно два яблока и ровно 4 груши. При этом
    фрукты нельзя измельчать, ломать или разрезать, поэтому в компот обязательно
    должны попасть целиком фрукты — лимоны, яблоки и груши.
    Перед вами стоит задача определить максимальное суммарное количество ли-
    монов, яблок и груш, из которых можно сварить компот по рецепту. Возможна
    ситуация, когда Николай не сможет для приготовления компота использовать ни
    одного фрукта, в таком случае выведите 0.
    Формат входных данных
    В первой строке следует целое положительное число a (1 ⩽ a ⩽ 1000) — коли-
    чество лимонов, которые есть у Николая.
    Во второй строке следует целое положительное число b (1 ⩽ b ⩽ 1000) — коли-
    чество яблок, которые есть у Николая.
    В третьей строке следует целое положительное число c (1 ⩽ c ⩽ 1000) — коли-
    чество груш, которые есть у Николая.
    Формат выходных данных
    Выведите максимальное суммарное количество лимонов, яблок и груш, из ко-
    торых можно сварить компот по рецепту.
    Примеры
    стандартный ввод стандартный вывод
    2
    5
    7
    7
    4
    7
    13
    21
    2
    3
    2
    0
    Замечание
    В первом примере Николай может использовать для приготовления компота 1
    лимон, 2 яблока и 4 груши, поэтому ответ 1 + 2 + 4 = 7.
    Во втором примере Николай может использовать для приготовления компота 3
    лимона, 6 яблок и 12 груш, поэтому ответ 3 + 6 + 12 = 21.
    В третьей примере Николаю не хватит груш, чтобы приготовить сколько-нибудь
    компота, поэтому ответ 0.

Ответы 1

  • var a,b,c,d,min,k:integer;beginwriteln('a, b, c');readln(a,b,c);if 4*a<2*b then begin min:=4*a; d:=a; end else begin min:=2*b; d:=b div 2; end;if c<min then begin min:=c; d:=c div 4; end;k:=d+2*d+4*d;writeln(k);end.Пример:a, b, c2 5 77
    • Автор:

      clements
    • 6 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years