Вход для пользователей

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

Изображение пользователя MT.

Третьего дня спросонья забыл взять с собой книжку, чтобы в метро почитать. Включившийся по привычке мозг требовал пищи и думал о всяком. Извилистая дорожка мыслей случайно вывела мозг на известную многим задачку про 6 шаров и весы. Звучит она примерно так: есть 6 внешне одинаковых шаров, один из которых тяжелее других; есть весы с двумя чашами, которые могут показывать только больше, меньше или равно, без конкретных значений; за какое минимальное число взвешиваний можно точно определить, какой из шаров тяжелее других?
Решение этой задачи: 2. Сначала делим шары по три на каждую чашу и взвешиваем. Какие-то три из шести оказываются тяжелее. Берём два из этих трёх и взвешиваем. Если один из них тяжелее, значит это тот самый шар. Если они равны, то искомый шар — тот, который остался. Таким образом, используя этот алгоритм, мы всегда имеем однозначное решение задачи: 2 взвешивания.

А теперь внимание:
1. Если N — количество шаров, то при каких его значениях, используя описанный выше алгоритм, мы будем иметь однозначное решение задачи?
2. Чему будет равно в это случае M — число взвешиваний?

Комментарии

По-моему при любом N решить задачу можно однозначно.

Самый простой вариант вариант: если N - степень двойки, то M собственно равно этой степени

Вариант посложнее, возможны 2 ситуации:

Ситуация 1: N делится на 2, тогда делим до тех пор пока делится и выбираем кучку, что тяжелее

Ситуация 2: N на 2 нацело не делится, тогда вычитаем 1 и спокойно делим на 2. Получаем 2 кучки и шар. По приведенному в решении алгоритму определяем, в кучке ли искомый шар и в какой кучке или этот шар уже найден.

Приходим снова к одной из ситуаций и повторяем итеративно до нахождения шарика

Максимальное необходимое число взвешиваний при этом будет равно логарифму по двойке ближайшей снизу степени двойки. То есть для 7 это будет log 4 по 2, то есть 2.

Может чего-то напутал, но вроде так

Изображение пользователя MT.

Когда я имел в виду неоднозначность, я как раз говорил про ситуацию 2, когда мы получаем две кучки и шар. В этой ситуации всегда есть вероятность (P = 1 / N) угадать с первого раза, но горазде больше вероятность того, что мы не угадаем.

мда, не особо внимательно читаю условие.
Тогда для нечетных N минимальное число взвешиваний с вероятностью 1/N = 1
Если и N div 2 нечетно, то
(N-1)/N * 1/(N div 2) = 2
Если N div 4 нечетно, то
(N-1)/N * (N div 2 - 1)/(N div 2) * 1 / (N div 4) = 3
и так далее.

Однозначно о минимальном числе взвешиваний получается можно сказать только для степеней двойки, иначе случайность выбора приходится учитывать

Изображение пользователя MT.

Ты уже близко ;) Про степени двойки ты угадал, но ещё кое-чего не хватает для полного счастья.

У меня получилось так:
N = 2^A x 3^B, где:
A >= 0,
B = 0 | 1
Тогда M = A + B

Изображение пользователя mystafa.

Чертовы математики. Вы ломаете мне моск :-)

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".