Известно что среди 9 монет одна фальшивая
Загадка: Известно, что среди девяти монет есть одна фальшивая.
Известно, что среди девяти монет есть одна фальшивая, у которой вес меньше чему у остальных. Как с помощью чашечных весов за два взвешивания определить фальшивую монету?
Очень интересная загадка.
Я так понял весы такие что положил гирю и на вторую гирю,в нашем случае монеты.
Разбиваем 9 монеток по 3 штуки(группа).
Взвешиваем 3 монеты на одной стороне и 3 монеты на другой.
Если масса обеих равна значит фальшивая монета в 3 группе.
Если нет то та сторона в которой оказалась масса меньше,эта и есть группа в которой фальшивая монетка.
Теперь второе взвешивание.
Берем группу(3 монетки)
И ложим 1/3 часть группы на весы,ну то есть одну монетку на одну сторону,одну монетку отложим.
Если на весах масса не равна и у одной монетки масса меньше,значит это и есть фальшивая.
А если весы показывают равный результат значит фальшивая монета та,которая не лежит на весах.
Оказалось все просто,нужно только правильно прочитать задачу.
просто положить на обе чаши монеты посмотреть если всё ровно то отложить их и проделать то же самое с остальными монетами
Задача для начальной школы. Делим на три части по три монеты. Первое взвешивание. На обе чашки по три монеты, три монеты на столе. Если чашки в равновесии, то фальшивая монета на столе. Второе взвешивание. Берем со стола по монете на чашку, если эти две монеты в равновесии, то фальшивая на столе. Если после первого взвешивания чашки имеют разный вес, то проводим второе взвешивание с двумя монетами из легкой чашки. И все.
Если продавец делает так, что покупатель не видит, что там показывают весы, значит, он нарушает правила торговли и права потребителя. А есть закон, который эти права защищает! Прочтите
по этой ссылке. Он уже с поправками на 2017-ый год.
Кроме того, на каждом рынке должны быть весы для контрольного взвешивания. При покупке у продавца, который свои весы прикрывает, предупредите его, что сейчас произведете контрольное взвешивание и при заниженном весе отправите на него жалобу.
Начиная с 1992 года банк России пустил в оборот четыре монеты номиналом в один рубль (юбилейные не в счет) и весят они по разному.
Я тоже этим страдаю!
Мне 15 лет, вес 45 килограмм, рост 160 см, я занимаюсь в спорт зале, хочу набрать мышечную массу и столкнулся с такой же проблемой какая у вас, я ем очень много не ни как не толстею, у меня и у вас очень хороший обмен веществ, по этой же и причине мы не толстеем, многие люди просто завидуют нам, а нам хочется хоть немного потолстеть чтобы не было костей! Я вам посоветую есть в день по 5-6 раз по маленькому разбить так чтобы вы ели каждые 3-4 часа в день, в рацион питания добавьте углеводы, белки, жиры, Ешьте много рис, овсянку, гречку, макароны- это все углеводы, ешьте мясо, рыб, яйца и многое другое!
Решение задач на определение фальшивой монеты взвешиванием 2.0
Сегодня я снова хочу вернуться к теме о задаче нахождении фальшивой монеты методом взвешивания на весах без циферблата.
Наиболее распространенные из таких задач — определение количества взвешиваний для выявления фальшивой монеты, если:
1) неизвестно какая она по весу;
2) известно, что она легче/тяжелее остальных.
Или обратная задача: можно ли за определенное количество взвешиваний выявить фальшивую из заданного количества монет.
1. Давайте сначала разберемся с 2 вариантом, который является частным случаем варианта 1.
Некоторое время назад, я на Хабре уже описывал решение такой задачи, но в одном из комментариев было замечание о немного странном первом разделении монет, по-этому предлагаю другой алгоритм решения. Хотя результат будет тот же и формула решения задачи остается та же:
N >= log3A,
где N — максимально необходимое количество взвешиваний, натуральное число, округленное в большую сторону;
A — количество монет.
Которая выведена на основании опытов (за 1 взвешивание можно найти одну фальшивую из 3-х монет, за 2 — из 9, за 3 — из 27 и т.д.)
Сам алгоритм решения простой, и я покажу его на примерах
1) Пусть у нас есть 26 монет. Нужно найти одну, которая легче/тяжелее
Первым действием буде разделение монет на три группы, в двух из которых число монет будет одинаковым, важно только что бы в третьей группе — остатке — было меньше монет, чем в каждой из двух других групп. То есть частое округляется к большему натуральному числу. То есть
A = 2 * B + C,
где A — количество монет;
B — частное от деления количества монет на 3, натуральное число, округленное в большую сторону;
C — остаток.
При первом взвешивании будут сравниваться две группы: правая (ПГ) — 9 монет и левая (ЛГ) — 9 монет.
Далее у нас возможны два варианта:
1) фальшивая монета в левой/правой группе (9 монет)
2) фальшивая монета в остатке (8 монет)
для 1 варианта следующее деление на группы будет — 9 = 2 * 3 + 3;
для 2 варианта — 8 = 2 * 3 + 2
Ну и за одно взвешивание можно определить какая из 2 или 3 монет легче/тяжелее
Этот же результат я приведу в таблице
№ взвешивания | Число монет | ЛГ | ПГ | Остаток |
1 | 26 | 9 | 9 | 8 |
2 | 8 | 3 | 3 | 2 |
2 | 9 | 3 | 3 | 3 |
3 | 2 | 1 | 1 | 0 |
3 | 3 | 1 | 1 | 1 |
по формуле — log326 =2.9656 — соответственно количество взвешиваний — 3.
еще пример:
число монет- 71. По формуле log371 =3.8800 — количество взвешиваний — 4. Проверяем
№ взвешивания | Число монет | ЛГ | ПГ | Остаток |
1 | 71 | 24 | 24 | 23 |
2 | 23 | 8 | 8 | 7 |
2 | 24 | 8 | 8 | 8 |
3 | 7 | 3 | 3 | 1 |
3 | 8 | 3 | 3 | 2 |
4 | 2 | 1 | 1 | 0 |
4 | 3 | 1 | 1 | 1 |
Ну с алгоритм решения этих задач, я думаю, понятен.
2. Теперь перейдем к задачам, в которых не известно легче монета или тяжелее.
В данном случае я предлагаю такое первое действие: разделить монеты на четыре группы, три — с максимально одинаковым количеством монет, а в четвертой группе — остаток. Причем в остатке должны быть 1 или 2 монеты. То есть при делении на 3 частное округляется до меньшего натурального числа.
A = 3 * B + C,
где A — количество монет;
B — частное от деления количества монет на 3, натуральное число, округленное в меньшую сторону;
C — остаток.
Например, для 58-ми монет — это будет 58 = 3 * 19 + 1, для 23 = 3 * 7 + 2, для 15 = 3 * 5 + 0 и т. д.
Далее выполняем два взвешивания:
1) первая и вторая группы;
2) первая и третья группы;
и анализируем результат.
Здесь возможны четыре варианта:1, 2, 3 — это первая, вторая или третья группа отличаются по весу от двух остальных, или они равны, тогда нам повезло, так как фальшивая — в остатке. Так же два взвешивания помогают определить определить тяжелее фальшивая монета или легче. Кстати, если в остатке две монеты, то нужно выполнить еще 2 взвешивания для определения фальшивой монеты.
Теперь у нас есть задача: определить одну фальшивую монету из группы, которая легче/тяжелее.
Что касается формулы, то она примет следующий вид
N >= log3B + 2,
где N — максимально необходимое количество взвешиваний, натуральное число;
B — количество монет в группе после второго взвешивания.
А если учесть, что B = A/3, где A — количество всех монет, тогда получим:
log3B = log3A — 1,
N >= log3A + 1
1) если известно, что фальшивая монета легче/тяжелее, тогда максимальное число взвешиваний определяется по формуле:
N >= log3A
2) если не известно, какая фальшивая, тогда максимальное число взвешиваний определяется по формуле:
N >= log3A + 1
где N — максимально необходимое количество взвешиваний, натуральное число, округленное в большую сторону;
А — количество монет.
Универсальная методика к решению задач на примере головоломки «12 монет, 3 взвешивания»
Дано: 12 монет, одна из них фальшивая, отличается только весом. Неизвестно легче или тяжелее. Даны рычажные весы, которые показывают, что груз с одной из сторон тяжелее. За 3 взвешивания необходимо найти фальшивую монетку.
Из опыта советую не спешить, решать письменно. Головоломка «12 монет, 3 взвешивания» несколько раз возникала в моей жизни. Первый раз ее задал мне мой товарищ-олимпиадник, решил я ее после олимпиады и пришлось пару часиков поломать голову. И через несколько лет она далось мне не сразу. Если желаете решить самим — делайте на листочке.
Ниже будет разбор и этапы решения. Этапы проведут по универсальной методике решения задач, которая применима как к программированию, так и к жизни. Благодаря подходу решение головоломки станет простым.
Предлагаю вам, прежде чем читать предложить решение. У вас есть ответ? Проверенный?
Если бы это было программного обеспечения вопросы были бы следующие: «Вы запрограммировали, протестировали алгоритм? Рассмотрели тестовые случаи и проверили их?».
Как показывает опыт, чтобы решить требуется нарисовать дерево решений и проверить все 12 случаев.
В процессе решения поможет:
1) Понижение энтропии (меры неопределенности) и ответы на вопросы:
2) Декомпозиция. Подход от простого к сложному. Если подготовить решение простейших случаев, затем использовать их для решения задачи (алгоритм разделяй и властвуй) то, будет проще, чем представлять всю ситуацию в голове.
Алгоритмы «разделяй и властвуй» разбивают задачу на две или более подзадачи того же типа, но меньшего размера до элементарных задач и объединяют их решения для получения ответа к исходной задаче.
Составьте вопросы для декомпозиции. Какие бы вы предложили?
Какие вопросы вы сформулировали для декомпозиции? Есть совпадения?
1) Какая ситуация самая элементарная? Что можем сделать за одно взвешивание?
За одно взвешивание можем определить, какая монета тяжелее, равен ли вес монет.
2) Если у нас 2 монеты, и, известно, фальшивая тяжелее или легче. Как за одно взвешивание определить фальшивую?
Необходимо взвесить монеты, и в зависимости от стрелки весов определить фальшивую.
3) Если у нас 2 монеты, и, не известно, фальшивая тяжелее или легче, как за одно взвешивание определить фальшивую?
Взвесив одну из 2-х представленных монет с третьей монетой, про которую известно, что она подлинная.
4) Если у нас 3 монеты, и, известно, фальшивая тяжелее или легче. Как за одно взвешивание определить фальшивую?
Необходимо сравнить любые две из этих монет, если они равны, фальшивой является третья монета.
5) Если у нас 3 монеты, и, неизвестно, фальшивая тяжелее или легче. Можно ли определить фальшивую за одно взвешивание?
6) Если у нас 4 монеты, и, неизвестно фальшивая тяжелее или легче, можно определить фальшивую за одно взвешивание?
7) Если у нас 4 монеты, и, неизвестно, фальшивая тяжелее или легче, за сколько взвешиваний можно определить фальшивую?
За два взвешивания.
Далее из элементарных случаев соберем ситуации из 8, 9, 10, 11 и 12 монет. Как вы видите решение?
Ниже полное решение.
Первый шаг: разделим монеты на 3 группы по 4: 1 2 3 4, 5 6 7 8, 9 10 11 12.
Сравним первые две группы. Возможны три варианта:
1) Если группы равны, то фальшивая монета находится в третьей группе. Необходимо найти фальшивую монету из 4 монет за два взвешивания.
Делим третью группу на две: 9 10 11 12
2) Рассмотрим второй случай. Если первая группа тяжелее второй, то присваиваем первой группе знак «>», второй группе знак « Заключение
При поступлении задачи на доработку или отладку хорошо применить рассмотренный выше подход:
Известно что среди 9 монет одна фальшивая
3)Среди 101 одинаковых по виду монет одна фальшивая, отличающаяся по весу. Как с помощью чашечных весов без гирь за два взвешивания определить, легче или тяжелее фальшивая монета? Hаходить фальшивую монету не требуется.
Ответ: Взвешиваешь 50 и 50 монет:
1) Равенство:
Беpем оставшуюся монету и ставим ее в левую кучку вместо одной из имеющихся там
1.1 Левая кучка тяжелее => фальшивая монета тяжелее
1.2 Левая кучка легче => фальшивая монета легче
2) Hеpавенство:
Беpем более тяжелую кучку и разбиваем ее на две кучки по 25 монет.
2.1 Вес кучек одинаковый => фальшивая монета легче
2.2 Вес кучек неодинаковый => фальшивая монета тяжелее
Ответ: 1) Hа одну чашу весов положить гирю в 5 фунтов, на другую гирю в 9 фунтов. Затем уравновесить весы, насыпав 4 фунта чая в чашу с гирей на 5 фунтов.
2) Убрать гири с чаш весов, оставить 4 фунта в одной чаше и уравновесить весы, насыпав во вторую еще 4 фунта.
3) Еще раз отвесить 4 фунта.
4) И еще раз 4 фунта. Таким образом, после четырех взвешиваний в остатке будет тоже 4 фунта.
5-9) Разделить 4 фунта пополам, уравновешивая чаши весов.
6)Имеется 8 с виду одинаковых монет. Одна из них фальшивая и известно, что она легче настоящей. Как с помощью всего лишь двух взвешиваний найти фальшивую монету? В Вашем распоряжении только лабораторные весы, которые показывают только больше-меньше.
Ответ: Делим монеты на две равные кучки. Из каждой кучки берем по 3 монеты, кладем на весы и взвешиваем. Если вес одинаковый то взвешиваем оставшиеся 1и 1 монеты и выявляем фальшивую (более легкую). Если же одна группа из трех монет легче другой, значит там есть фальшивая монета. Оставляем более легкую группу из трех монет и кладем на весы 1и 1 и действуем по предыдущему алгоритму: если вес одинаков, значит фальшива третья, а если нет то та которая легче.
8)Имеется 100 серебряных монет разных размеров и 101 золотая монета также разных размеров. Если у одной монеты размер больше, чем у другой, то она и больше весит, но это верно только для монет, сделанных из одного и того же металла. Все монеты можно легко упорядочить по размерам на глаз. Отличить золота от серебра можно тоже :-). Как за 8 взвешиваний определить, какая монета из всех 201 штук занимает по весу ровно 101-е место? Все 201 монеты также различны по весу. Весы с двумя чашками, как обычно.
Ответ: Раскладываем в два ряда все монеты в порядке возрастания размера: золотые отдельно, серебряные отдельно. Пyсть пеpвая по счетy в каждом pядy монета самая большая (и тяжелая).
Сpеднюю по весy монетy можно найти, последовательно взвешивая сpединные монеты каждой из оставшихся линеек.
1) взвешиваем 51-ю золотyю монетy и 50-ю сеpебpянyю. Если пеpвая тяжелее, то искомая монета находится где-то сpеди 52-101 золотой и 1-50 сеpебpяной. Если легче, то искомая монета находится где-то сpеди 1-51 золотой и 51-100 сеpебpяной. То есть, 51+50 монет. Остальные можно отложить.
2) взвешиваем опять сpединные монеты. Так как число ваpиантов pастет в геометpической пpогpессии, бyдy pассматpивать только итоги 😉 Из 51+50 монет выбиpаем сpавниваем 25 и 26 монеты. Остается 26+25 монет.
3) Взвешиваем 13 и 13 монеты. Остается 13+13 или 13+12. Далее бyдy pассматpивать только слyчай 13+13, 13+12 аналогично.
4) Взвешиваем 7 и 7. Остается 7+7.
5) Взвешиваем 4 и 3. Остается 4+3.
6) Здесь могy поподpобнее, так как монет осталось мало 😉 Пyсть остались золотые монеты 1234 и сеpебpяные ABC (все в поpядке возpастания). Взвешиваем 2 и B. Если 2>B, то сpедняя монета какая-то из 34AB, если нет, то из 12C. Рассмотpи пеpвый слyчай.
7) Взвешиваем 3 и A.
8а) если 3 8б) если 3>A, то взвешиваем 4 и A. Какая больше, та и искомая.
9)Еще известная задача такого уровня: (Возможно это легенда, но очень уж красивая)
Во времена Второй Мировой Войны, Английские ученые подбросили Hемецким ученым, что бы они не решали военные проблемы, а решали головоломки, следующую логическую задачу.
Кладоискатели нашли клад и записку в которой было написано: В этих 20 мешках с золотыми монетами есть один мешок с фальшивыми монетами. Известно, что фальшивая монета в два раза тяжелее настоящей.
Задача: Как при помощи одного взвешивания определить в каком мешке находятся фальшивые монеты?
Примечание. Взвешиванием называется тот момент, когда весы, типа коромысла, станут горизонтально, показывая, что на правой стороне весов и на левой стороне одинаковый вес.
И еще Англичане приделали приписку к задаче, что они потратили 10 тысяч человеко-часов для решения этой задачи.
Ответ: Да. 7+8 = 1+2+3+4+5, остается 6.
Ответ: Два. Делим на кучи (1)666, (2)666, (3)666 и (4)2.
Взвешиваем (1)-(2), (2)-(3). Если в обоих случаях равенство, то оставшиеся 2 шарика разные.
Простая задача о взвешивании монет
Задача
Хорошо известна задача о взвешивании монет на простых рычажных весах, с целью найти одну фальшивую монету за минимальное число взвешиваний.
Например, у Вас имеется 100 одинаковых по виду монет. Все они одинакового веса, кроме одной фальшивой монеты, которая легче остальных монет. Спрашивается, за какое минимальное число взвешиваний на рычажных весах можно найти фальшивую монету.
Алгоритм
Алгоритм решения этой задачи довольно простой. Берем ближайшее большее число к 100, которое делится на 3. Это число 102. Делим 102 на 3, получаем 34. На обе чаши весов кладем по 34 монеты, а 32 монеты оставляем лежать на столе.
Если чаши весов уравновешены, значит, на нах находятся только настоящие монеты, а фальшивая монета среди 32 монеты, которые остались на столе. В этом случае работаем только с этими 32 монетами. А если какая-то из чаш весов с 34 монетами оказалась легче другой чаши, то работаем далее с теми 34 монетами, где находится более легкая монета.
И далее повторяем весь алгоритм заново. То есть, если число монет не делится на 3, то находим ближайшее целое число, которое превышает число монет и которое делится без остатка на три. Делим это число на 3, чтобы получить, сколько монет нужно положить на обе чаши весов. А оставшиеся монеты оставляем лежать на столе. Это число монет всегда меньше или равно числу монет на одной из чаш весов. Проводим взвешивание, чтобы определить, с какой из этих трех групп монет работать дальше.
Допустим, у нас обе чаши весов с 34 монетами уравновешены. Значит, работаем с оставшимися на столе 32 монетами. Ближайшее большее число, которое делится на 3, будет 33. Делим 33 на 3 и получаем, что на обе чаши весов надо положить по 11 монет, а 10 монет оставить на столе.
А если легче оказалась чаша весов с 34 монетами, то ближайшее большее целое, которое делится на 3, будет 36. Поэтому берем из этой легкой кучи из 34 монет по 12 монет на каждую чашу весов, а 10 монет оставляем лежать на столе.
Разное число минимальных взвешиваний
Перебирая таким алгоритмом все возможные варианты, мы получаем, что надо сделать или 4 или 5 взвешиваний. Какое именно число взвешиваний надо будет сделать, 4 или 5, это уж как повезет.
Например, как получается 4 взвешивания. Если после второго взвешивания нам придется работать с 10 монетами, которые при втором взвешивании оставались на столе, то в третьем взвешивании кладем на обе чаши весов по 4 монеты. Две монеты оставляем на столе. Если в третьем взвешивании чаши весов уравновешены, то остается сделать только одно четвертое взвешивание, поместив на каждую чашу весов по одной монете из двух оставшихся на столе монет.
А если на третьем взвешивании нам не повезет, и, допустим, дальше надо будет работать не с 2 монетами, а с 4 монетами, то 4 взвешиваний уже не хватит. На 4-м взвешивании мы кладем на обе чаши весов по 2 монеты, а на столе ничего не остается. И затем делаем 5-е взвешивание с чашами весов по одной монете.
Можете сами проверить другие разветвления после второго взвешивания, когда придется работать не с 10 монетами, а с 11 или с 12 монетами, что данный алгоритм дает максимум 5 взвешиваний, но если повезёт, то и 4 взвешивания.
Одно число минимальных взвешиваний
А бывает ли так, чтобы число взвешиваний по данному алгоритму было бы строго определенным числом и не зависело бы от везения?
Да, такое бывает, когда каждый раз на столе остается столько же монет, сколько и на каждой чаши весов. Это бывает тогда, когда на каждом взвешивании число монет всё время делится на 3 без остатка. То есть, начальное число монет должно быть равным степени числа 3. Это числа
Степень тройки показывает, сколько взвешиваний нужно сделать.
Например, число 27, это 3 в 3-й степени (3 3 =27). Значит, найти фальшивую монету среди 27 монет можно за 3 взвешивания. На первом взвешивании кладем на обе чаши весов по 9 монет и еще 9 монет оставляем на столе. На втором взвешивании 9 монет делим на три кучки по 3 монеты, и кладем на обе чаши весов по 3 монеты и еще 3 монеты оставляем на столе. И, наконец, на последнем третьем взвешивании по одной монете кладем на обе чаши весов и одну монету оставляем на столе.
Нетрудно проверить, что для 27 монет взвешиваний всегда будет 3, где бы случайно не оказалась фальшивая монета на каждом взвешивании, на одной из чаш весов или на столе.
Общее правило
Общее правило определения числа минимальных взвешиваний следующее. Если дано N монет, среди которых одна монета отличается по весу, и это число N не является степенью числа 3, то надо найти ближайшие к N два числа, которые являются степенями числа 3. Показатели степеней числа 3 для этих двух чисел и будут равны числу минимальных взвешиваний. Если N точно является степенью числа 3, то показатель степени числа 3, будет одним минимальным числом взвешиваний.
В нашем примере N=100. Данное число не является степенью числа 3. Значит, ищем ближайшие к 100 степени числа 3. Это числа 81 и 243. При этом 3 4 =81 и 3 5 =243. Значит, числа 4 и 5 являются минимальным числом взвешиваний для поиска фальшивой монеты среди 100 монет.
Если число монет 59’049, то это число является точной степенью числа 3, а именно: 3 10 =59049. Значит, для поиска фальшивой монеты среди 59’049 монет нужно будет сделать точно 10 взвешиваний.
Понятно, что это правило и этот же алгоритм будут работать, если фальшивая монета не легче настоящей, а тяжелее её. Но в общем случае нужно обязательно заранее знать, какая из монет тяжелее, настоящая или фальшивая, чтобы правильно определять, с какой группой монет работать на следующем взвешивании.
Сложная задача о взвешивании монет
Это была очень простая задача о взвешивании монет. А как Вам теперь такая задача.
Имеется N мешков с монетами. Все монеты на вид не отличаются друг от друга. В каждом мешке находятся монеты только одного какого-нибудь вида, или настоящие монеты или какой-нибудь один сорт фальшивых монет. Известно, сколько весит каждый сорт монет, то есть известен вес настоящей монеты и веса всех сортов фальшивых монет. Неизвестно в каких именно мешках находятся настоящие монеты, а в каких мешках находятся фальшивые монеты.
Вопрос: Как ОДНИМ взвешиванием определить, в каких мешках находятся настоящие монеты, а в каких мешках находятся какие сорта фальшивых монет? Весы обычные, которые показывают вес, например, в граммах.
Считается, что в мешках достаточное количество монет, чтобы брать оттуда любое количество монет.
Обратите внимание, что фальшивые монеты не обязательно должны быть легче, чем настоящие. Например, может быть, что всего 7 сортов монет со следующими весами в граммах: 4, 5, 8, 9, 10, 13 и 16. Настоящая монета имеет вес 10 грамм, а все остальные фальшивые. Кроме того, у нас не обязаны все 7 сортов этих монет присутствовать. Может быть такая ситуация, что во всех N мешках находятся только одни настоящие монеты, или во всех N мешках находятся только фальшивые монеты с весом 9 грамм. Или могут быть любые более сложные ситуации, когда часть мешков занята одним сортом монет, часть мешков другим сортом монет и т.д. И нам неизвестно в каком порядке чередуются в этих мешках эти монеты.
На первый взгляд, эта задача кажется не имеющая решения. И, тем не менее, за одно взвешивание можно определить всё распределение всех сортов монет по всем мешкам.
Решение этой красивой задачи смотрите здесь.