LINUX.ORG.RU
решено ФорумTalks

Как решить задачу?

 2класс, ,


0

1

Увидел задачу:
Есть 9 одинаковых шаров.
Один из них немного тяжелее.
Как при помощи двух взвешиваний на двухчашечных весах без гирь найти этот шар.

Автор пишет что она для 2 класса.

Не понял как она решается. Объясните?
У меня выходит 3 взвешивания.

Без гуглов естественно.

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

unC0Rr ★★★★★
()
Ответ на: комментарий от VictimOfLoveToLinux

Ты серьезно?
Выбираешь из трех куч ту которая тежелее...
Про то как из трех шаров найти тяжелый рассказывать?

J ★★★★★
()
Ответ на: комментарий от VictimOfLoveToLinux

На угад

Oh shi~
у тебя есть ещё одно взвешивание.

J ★★★★★
()

тут недавно задача про 13 и неизвестно в какую сторону масса отличается проскакивала, вот там есть над чем подумать, а тут действительно 2 класс.

qnikst ★★★★★
()

Есть более сложный вариант этой задачи. Все тоже самое, только 3 взешивания и неизвестно шар легче или тяжелее.

pi11 ★★★★★
()
Ответ на: комментарий от VictimOfLoveToLinux

Так нельзя руками взвешивать, лол. Только весы, только хардкор.

Детишек готовят к невесомости? Ну тогда вместо весов должна быть центрифуга. А так чё-то не очень-то жизненно всё выглядит.

Cancellor ★★★★☆
()
Ответ на: комментарий от unC0Rr

Ну вот, приплыли.. начитаешься интернета и начинаешь в предложном падеже лепить окончание "-и"

unC0Rr ★★★★★
()

Откладываем 3 шара; взвешиваем две партии по 3 штуки; определяем партию где присутствует тяжёлый шар, он обязательно должен быть либо на одной из чаш, либо в отложенной партии. Потом берём партию с тяжёлым шаром и взвешиваем любые два шара из неё и по исходному алгоритму определяем тяжёлый шар.

Attila ★★
()
Ответ на: комментарий от qnikst

тут недавно задача про 13 и неизвестно в какую сторону масса отличается проскакивала, вот там есть над чем подумать, а тут действительно 2 класс.

Над чем там думать? Тот же 2 класс и стартовый алгоритм один в один «отложить 3 шара...» :)

Attila ★★
()
Ответ на: комментарий от J

а дальше думать, что сделано не так и начинать заново

qnikst ★★★★★
()
Ответ на: комментарий от qnikst

А да вспомнил, я эту же задачу имел ввиду (только с 12 шарами).
13 - это видимо более сложная модификация (хотя решается также).
Делим на 4 кучи, 3 кучи по 4 шара и еще 1 шар отдельно. А далее решается также как и с 12 шарами.

pi11 ★★★★★
()
Ответ на: комментарий от J

Я с 12 шарами тоже часа полтора решал.

pi11 ★★★★★
()
Ответ на: комментарий от VictimOfLoveToLinux

9>13 добро пожаловать в линейное пространство остатков по модулю 5!

qnikst ★★★★★
()
Ответ на: комментарий от VictimOfLoveToLinux

Взвесили а они одинаковые по весу оказались и у нас ещё три шара осталось.

Кэп подсказывает что тогда искомый шар в отложенной куче.

DNA_Seq ★★☆☆☆
()
Ответ на: комментарий от qnikst

ага, причем хитрыми вычислениями можно показать, что при 14 шарах не решается.

Если известно тяжелее или легче, то

7 - 7
3 - 3
1 - 1

Zodd ★★★★★
()
Ответ на: комментарий от qnikst

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

да! попался я! :) решение ускользает хоть тресни :( неизвестность (тяжелый или лёгкий шар) добавляет одно взвешивание, а как это обойти пока не придумал. ?:-|

Attila ★★
()
Ответ на: комментарий от Attila

ок, тогда думай, ограничение на «сначала отложить 3» отменяется :)

qnikst ★★★★★
()
Ответ на: комментарий от J
взвешиваем две кучки из трёх шаров.

если кучки равны - то остается одна,
  взвешиваем два шара из неё,
  если равны - возвращаем третий
  если не равны - то
    взвешиваем с оставшимся один из имеющихся.
    если не равны - значит тот шар, который не трогали,
    если равны - значит тот шар, который убрали.

если кучки не равны - то
  взвешиваем оставшуюся кучку с той, которая тяжелее
  если равны - то (1. шарик легче, 2. он в более легкой кучке)
    взвешиваем два шарика из легкой кучки
    если равны - возвращаем третий
    если не равны - то возвращаем более легкий.
  если не равны - то (1. шарик тяжелее, 2. он в более тяжелой кучке)
    взвешиваем два шарика из лёгкой кучки
    если равны - возвращаем третий
    если не равны - возвращаем более тяжелый

три взвешивания, неизвестно более тяжелый или нет. вы правда не могли это решить или я допустил какую-то глупую ошибку?

billic ★★
()

Взвешивай по 3 шарика на чашу. Если одна из чаш перевесила, то из трёх шаров на наше взвешиваешь 2. Дальше объяснять?

Black_Shadow ★★★★★
()

все такие задачи решаются дихотомией. т.е. делением пополам. +ещё исключение третьего. Т.е. если A == B && A == C && B == C ложно, и A == B && A == C, то очевидно B != C. Конкретные цифры роли не играют.

drBatty ★★
()
Ответ на: комментарий от billic

два. если одна кучка немного тяжелее, то там и содержится искомый шар. Когда есть 3 шара, то выбираем тот шар, что тяжелее. Если они одинаковые => выбираем третий (который не взвешивали).

вы забыли условие:

1. A == B
2. C > B
drBatty ★★
()
Ответ на: комментарий от drBatty

как я понял, мы с Вами разные задачи решаем, эту, за 2 взвешивания с одним тяжелым шаром решили сразу - а ту, где неизвестно тяжелее или легче и за 3 взвешивания в треде почему-то решить не смогли. именно её решение у меня написано.

billic ★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.