Ответы 2

  • Кратко: Для выделения легкой монеты из n одинаковых монет с наименьшим числом взвешиваний можно использовать алгоритм троичного деления монет.
    1. Разделите монеты на три равные группы.
    2. Положите две из трех групп на весы.
    3. Если весы сбалансированы, то легкая монета находится в третьей группе.
    4. Если весы не сбалансированы, возьмите группу, которая оказалась легче, и повторите первые три шага с использованием этой группы вместо всех монет.
    5. Продолжайте делить выбранную группу на три равные подгруппы и сравнивать их на весах до тех пор, пока не будет найдена легкая монета.
    Таким образом, алгоритм троичного деления монет позволяет выделить легкую монету с использованием наименьшего числа взвешиваний.



    ------------------------------------------------------------------------------------------------------



    Полный ответ: Для решения этой задачи можно использовать алгоритм деления группы монет на три подгруппы. Вот пошаговое решение:

    1. Разделите все монеты на три равные подгруппы (если общее количество монет n не делится на 3 без остатка, одну из подгрупп будет на одну монету больше или меньше).

    2. Возьмите две из этих подгрупп и положите на весы. Если они равны, то легкая монета находится в третьей подгруппе, если нет, то тяжелая монета находится на весах.

    3. Возьмите любые две монеты из неравновесной группы и положите на весы. Если они равны, то легкая монета - третья, если нет, то тяжелая монета - на весах.

    4. Если у вас осталась последняя несравненная монета, это будет монета легче или тяжелее (в зависимости от предыдущих сравнений).

    Таким образом, с помощью взвешиваний без гирь можно выделить легкую или тяжелую монету за наименьшее число взвешиваний, используя деление монет на три подгруппы.
    • Автор:

      elliott
    • 1 год назад
    • 0
  • Эта задача известна как "Задача о 12 монетах" и обычно решается за 3 взвешивания, но она может быть обобщена для любого числа монет. Вот общий алгоритм для решения этой задачи:

    1. Разделите все монеты на три равные группы. Если n не делится на 3, то в двух группах будет n/3 монет (округление вниз), а в третьей группе будет остаток.

    2. Сравните вес двух групп из n/3 монет. Если они равны, то легкая монета находится в третьей группе, иначе она находится в более легкой группе.

    3. Повторите этот процесс для выбранной группы, пока не найдете легкую монету.

    Количество взвешиваний будет равно log3(n), округленное вверх, так как каждое взвешивание позволяет нам исключить 2/3 монет. Это наиболее эффективный метод для решения этой задачи.
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years