Непростая задача про орехи

Посчитать легко, но сложно найти правильный алгоритм.

Непростая задача про орехи

Сегодня рассмотрим одну из самых ненавистных, алгоритмически неочевидных и вместе с тем простых в решении задач — классическую задачу на смешивание. Это программа собеседований и школьных олимпиад.

Условия:

  • В продуктовый магазин привезли два пакета — с орехами и сухофруктами. 
  • Продавец ссыпал всё в один пакет и перемешал.
  • Продавец сложил стоимость привезённых орехов с сухофруктами и поделил на общий вес в 32 килограмма. Получилась цена смеси в 285 рублей за килограмм.
  • Вскоре накладные на товар потерялись, и мы больше не знаем, сколько килограмм было в каждом пакете по отдельности.
  • Но мы знаем стоимость предыдущих поставок: 300 рублей за килограмм орехов и 240 за кило сухофруктов.

Задача: узнать вес привезённых пакетов с орехами и сухофруктами, чтобы поставить их на учёт.

Начнём с того, что у нас есть: посчитаем общую стоимость смеси, которая получилась в итоге.

32 килограмма × 285 рублей/кг = 9120 рублей.

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

Если бы вся смесь была только из сухофруктов по 240 рублей за кило, то она бы стоила:

32 килограмма × 240 рублей/кг = 7680 рублей. 

Но наша смесь стоит дороже, потому что в ней есть орехи. Из-за того, что к сухофруктам добавили дорогие орехи, они стали стоить на 9120 − 7680 = 1440 рублей. Это общая разница в стоимости между итоговой смесью и одними сухофруктами.

Разница между стоимостью одного килограмма орехов и сухофруктов = 300 − 240 = 60 рублей. Другими словами, каждый килограмм орехов в этой смеси делал бы ее стоимость на 60 рублей больше. Если бы мы взяли 31 кг сухофруктов и 1 кг орехов, то общая стоимость была бы 7680 + 60 рублей. Если бы мы взяли 30 кг сухофруктов и 2 кг орехов, то 7680 + 120 рублей.

Если продолжить так добавлять орехи, то в какой-то момент разница в стоимости станет 1440 рублей — именно эту разницу мы вычислили чуть выше. Осталось понять, сколько раз нужно «подсыпать» орехов в эту смесь, чтобы получить такую стоимость: 

1440 / 60 = 24 килограмма.

А раз вся смесь весит 32 килограмма, легко посчитать вес оставшихся сухофруктов: 32 – 24 = 8 килограмм.

Настоящий кладовщик всегда проверит расчёты, поэтому сделаем как кладовщик:

24 × 300 = 7200 рублей — столько стоят орехи в смеси;

8 × 240 = 1920 рублей  — столько стоят сухофрукты в смеси.

Итого: 7200 + 1920 = 9120 рублей — общая стоимость, всё сходится.

Редактура:

Максим Ильяхов

Художник:

Даня Берковский

Корректор:

Ирина Михеева

Вёрстка:

Мария Дронова

Соцсети:

Олег Вешкурцев

Вам может быть интересно
Задача о подозрительном автосалоне
Задача о подозрительном автосалоне

Что будет, если продавать машины дешевле себестоимости.

easy
Задача о деньгах
Задача о деньгах

Пропало 300 рублей, но никто этого не заметил.

medium
Андрюха, у нас логика! Возможно, криминал
Андрюха, у нас логика! Возможно, криминал

Логическая задача о преступности.

easy
Как выиграть в соревнованиях, когда играешь хуже всех
Как выиграть в соревнованиях, когда играешь хуже всех

Ещё одна обалденная задача на стратегию и игровую теорию.

hard
Задача на логику: что в какой коробке?
Задача на логику: что в какой коробке?

Три коробки, два фрукта, один выбор

easy
Один футболист против законов математики
Один футболист против законов математики

Самое простое и понятное объяснение теории вероятностей, которое вы встретите.

medium
Задача: баг или фича?
Задача: баг или фича?

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

easy
Задача про бейсбольную биту
Задача про бейсбольную биту

Эта задача решается не так просто, как кажется.

easy
Сложная задачка: отчёт о работе
Сложная задачка: отчёт о работе

Как найти решение, если вы уже знаете ответ.

hard
easy