Назад к вопросам
Газпромбанк
Senior
8
Есть 9 бильярдных шаров, все выглядят одинаково, но один чуть тяжелее остальных. Есть механические весы с двумя чашами. Нужно за минимальное количество взвешиваний определить самый тяжёлый шар.
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
Минимальное количество взвешиваний — 2.
Алгоритм:
- Разделите 9 шаров на 3 группы по 3 шара.
- Взвесьте две группы по 3 шара друг против друга.
- Если чаши уравновешены, значит тяжелый шар в третьей группе.
- Если нет, тяжелый шар в той группе, чья чаша тяжелее.
- Возьмите выбранную группу из 3 шаров и взвесьте любые два шара друг против друга.
- Если одна чаша тяжелее, тяжелый шар найден.
- Если чаши равны, тяжелый шар — третий, не взвешенный.
Пример:
Шары: A, B, C, D, E, F, G, H, I
Взвешиваем: (A, B, C) против (D, E, F)
- Если равны, тяжелый в (G, H, I)
- Иначе тяжелый в более тяжелой группе
Далее взвешиваем два шара из выбранной тройки, например G против H
- Если равны, тяжелый — I
- Иначе тяжелый — тот, что тяжелее