Здесь я буду собирать задачки, которые задают мне на собеседованиях на веб-разработчика.

Задача про корзину с яблоками и друзей.

Есть корзина с 5 яблоками и 5 друзей. Нужно дать каждому другу по яблоку, но одно должно быть в корзине.

Решение: 4 друзьям даем по яблоку, пятому даем корзину с последним яблоком.

Задачи про переливание воды из ведра в ведро.

1 задача — есть два ведра 3  и 5 литров. Нужно при помощи переливаний воды получить в одном ведре ровно 4 литра воды.

Эта задача была в фильме Крепкий орешек 3 —  про ограбления золотовалютных резервов США.

Решение.

  1. 5вл (5л)  -> 3вл = 5лв — 2л и 3вл (3л)
  2. 5вл (2л ) — > 3вл =  3лв — 2л и 1л пусто
  3. 5вл (1л) -> 3вл = 5лв —  4л  и 3вл — 3л

2 задача — есть два ведра 5 литров  и 9 литров. Нужно набрать 3 литра воды

  1. 5лв -> 9лв = 9лв(5л)
  2. 5лв -> 9лв (5л) = 5лв(1л)
  3. 5лв(1л) -> 9лв (пустое) = 9лв (1л)
  4. 5лв(5л) -> 9лв(1л) = 9лв(6л)
  5. 5лв(5л)-> 9лв(6л) = 5лв(2л)
  6. 5лв(2л) -> 9лв(пустое) = 9лв(2л)
  7. 5лв(5л) -> 9лв(2л) = 9лв(7л)
  8. 5лв(5л)-> 9лв(7л) = 5лв(3л)

Задачи про мешки с монетками и весы

Задача 1 — есть 8 мешков с монетами, в одном мешке монеты фальшивые и весят меньше чем настоящие. За два взвешивания на аптекарских весах нужно выяснить в каком мешке монеты фальшивые.

Решение. Берем по монете из каждого мешка и как-то их подписываем. Раскладываем монеты в три кучки. Взвешиваем две кучки по три монеты. Если кучки весят одинаково — фальшивой нет.  Тогда взвешиваем две монеты из 2 кучки. Если фальшивая монета в одной из кучек по 3 монеты — берем две монеты из этой кучки и взвешиваем. Если монеты весят одинако —  фальшивая третья монета.

Задача 2  — есть 10 мешков с монетами. В одном мешке монеты фальшивые. Есть обычные напольные весы. Взвешивать можно 1 раз. Известно, что настоящая монета весит 2 грамма, а фальшивая — 1 грамм.

Нумеруем мешки. Из первого берем одну монету, второго две, третьего — три  т.д. Взвешиваем все монеты сразу и по полученному значению высчитываем — в каком мешке монеты.