Будущее будущим, а кушать хочется всегда, поэтому Коля отправился в местную молочную...

0 голосов
46 просмотров

Будущее будущим, а кушать хочется всегда, поэтому Коля отправился в местную молочную лавку. В 2084 году кефир продают в литровых пластиковых бутылках по a копеек за штуку и в литровых бутылках из стекла по b копеек за штуку. При этом пустую стеклянную бутылку можно сдать и получить назад c (cb) копеек, а пластиковую бутылку сдать нельзя.

У Коли в кармане есть n копеек, и он очень голоден, поэтому хочет выпить как можно больше литров кефира. Так как в его время не было пластиковых бутылок, он совсем не знает, как действовать. Поэтому он обратился за помощью к вам, как к единственному знакомому в будущем.

Входные данные
В первой строке входных данных задаётся число n (1n1018)— количество копеек у Коли в кармане.

В строках со второй по четвертую по одному записаны числа a, b и c (1a1018, 1cb1018)— стоимость пластиковой бутылки с кефиром, стоимость стеклянной бутылки с кефиром и сколько копеек можно получить, сдав пустую стеклянную бутылку, соответственно.

Выходные данные
Выведите одно целое число — максимальное количество литров кефира, которое сможет выпить Коля.

Пояснения к примерам
В первом примере Коля может купить один литр в стеклянной бутылке, затем сдать эту бутылку и снова купить стеклянную бутылку. Таким образом, он сможет выпить два литра кефира.

Во втором примере Коля может купить две пластиковые бутылки и получить два литра кефира или купить сначала один литр в стекле, потом сдать бутылку и купить одну бутылку в пластике. В обоих случаях он купит два литра кефира.
Примеры
входные данные
10
11
9
8
выходные данные
2
входные данные
10
5
6
1
выходные данные
2


Информатика (99 баллов) | 46 просмотров
0

Что за странные записи 1n1018, 1a1018, 1cb1018 ?

0

1<=n<=10^18,1<=a<=10^18,1<=b<=10^18

0

Все равно решать не стану, это задание с сайта... опять на чужой шее в рай кто-то хочет въехать...

0

надоели уже

Дан 1 ответ
0 голосов
Правильный ответ

#Ruby
n = gets
a = gets # пластик
b = gets # стекло
c = gets # возврат

litrov = 0
if a < b-c
    litrov = n/a
else
    while (n >= a or n >= b)
        if n >= b
            n -= b-c
        else
            n -= a
        end
        litrov += 1
    end
end
p litrov

(55.0k баллов)