Козленок с доплатой

Овечка
Овечка напряженно пытается подсчитать сумму доплаты:)

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

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

На вырученные деньги они купили ягнят по 10 долларов за голову. После покупки ягнят у братьев осталось еще немножко денег, которых не хватало на ягненка, поэтому на эти деньги они купили козленка.

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

Сколько денег в качестве доплаты должен получить брат, которому достался козленок?

Посмотреть решение

Брат, получивший козленка, должен получить доплату в 2 доллара. Таким образом братья получат равную прибыль от продажи коров.

Давайте посмотрим, как можно прийти к такому выводу.

Предположим, что у братьев было 10 коров. Они продали их по 10 долларов за голову (потому что каждую корову продали за столько долларов, сколько коров было в стаде). Выручка составила 100 долларов. Этого хватит, чтобы купить 10 ягнят по 10 долларов за голову.

Но в этом случае у братьев ничего не остается, чтобы купить козленка, а это противоречит условию задачи. Значит, браться точно начали не с 10 коров. Также мы можем прийти к выводу, что число коров в стаде вообще не может быть кратным 10, потому что не будет оставаться сдача на козленка.

Есть еще один важный момент.

Количество денег, полученных братьями от продажи коров, — квадратное число (число, корень из которого извлекается нацело). Каждую корову продали за столько долларов, сколько коров в стаде, поэтому полученная сумма это в любом случае какое-то число, умноженное само на себя.

Давайте попробуем с другим числом. Возьмем, к примеру, 15. В этом случае братья продали 15 коров по 15 долларов за голову, что дало им в сумме 225 долларов. На эти деньги можно купить 22 ягненка, а еще 5 долларов останется. Но тогда у братьев будет 22 ягненка и 1 козленок, в целом — 23 животных. А сказано, что у братьев оказалось четное количество животных, которое они поделили поровну. Так что коров не могло быть 15.

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

Мы уже знаем, что сумма выручки должна быть квадратным числом. Давайте посмотрим на первые 20 квадратных чисел:

Число коровВыручка
11
24
39
416
525
636
749
864
981
10100
11121
12144
13169
14196
15225
16256
17289
18324
19361
20400

Мы определились, что количество денег не должно быть кратным 10, а на позиции десятков должна быть нечетная цифра. Если предположить, что у братьев было от 1 до 20 коров, подходящие варианты — 4, 6, 14 и 16 коров.

Допустим, у братьев было 14 коров. Они продали их за 196 долларов. На эти деньги они могут купить 19 ягнят и козленка за 6 долларов. Один брать получит 10 ягнят стоимостью 100 долларов, а второй — 9 ягнят и козленка, общей стоимостью 96 долларов. Первый брать должен доплатить второму 2 доллара, и тогда их выручка от продажи стада сравняется (каждому по 98 долларов).

Если вы приглядитесь к суммам выручки, вы заметите, что для любого количества коров, отвечающего нашим условиям (не кратное 10, на позиции десятков — нечетная цифра), сумма выручки заканчивается на «6», и это и есть цена козленка. Если козленок стоит 6 долларов, брат, получающий его, должен получить доплату в размере половины от разницы в цене ягненка и козленка. Это 1/2 ($10 — $6) = $2. Это и есть ответ. Брату, которому достается козленок, всегда нужно будет доплатить еще 2 доллара.

Просмотрев полный список квадратных чисел, вы быстро заметите, что все подходящие числа для начального количества коров — те, что кончаются на 4 или 6. Братья могли начать с 16 коров, а могли и с 2116 коров — все равно один должен будет доплатить другому 2 доллара.

python books logo

Хотите решать больше задач по Python

Подписывайтесь на нас в Телеграм

×