Задача C-1: [C] Игра с числами

Петя нашел у себя на полке два числа и решил поиграть с ними! В игре, которую он придумал, есть всего два типа ходов: сделав ход первого типа, ровно одно из чисел либо уменьшается, либо увеличивается на 1 При ходе второго типа оба числа либо увеличиваются, либо уменьшаются на 1 (одновременно).

Так как было уже поздно, пришла мама и сказала Пете ложиться спать. Но вот беда — каждый ход первого типа требует x секунд, а каждый ход второго типа y секунд. Помогите Пете и выведите наименьшее количество секунд, которое необходимо потратить, чтобы получить два нуля (иначе мама его накажет).

Формат входных данных В первой строке записано два числа — x, y

Во второй строке записано два числа — a, b числа, которые были у Пети изначально.

Формат результата Выведите одно число — минимальное время в секундах, которое потребуется, чтобы получить два нуля.

Примеры

Входные данные

5 7

7 10

Результат работы

64

Входные данные

20 1

15 10

Результат работы

110

Входные данные

3 2

0 0

Результат работы

0

Я написал это

x, y = input().split()
x, y = int(x), int(y)

a, b = input().split()
a, b = int(a), int(b)

time = 0


if a < b:
    time += x*(b - a)
    b -= (b - a)
    time += y*a

elif a > b:
    time += x*(a - b)   
    a -= (a - b)
    time += y*a

elif a == b:
    time += y*a


print(time)

Но почему-то оно не проходит тест №7, что в этом тесте я не знаю


Ответы (1 шт):

Автор решения: Nike Kepler

Вот учел ваше сообщение @Stanislav

t1, t2 = list(map(int, input().split()))
x, y = list(map(int, input().split()))
time_to_zeros = t1 * abs(x - y) + t2 * min(x, y)
print(min(time_to_zeros, (x + y) * t1))
→ Ссылка