Size: a a a

HolyJS, JavaScript-конференция

2018 December 10

AG

Alex Gusev in HolyJS, JavaScript-конференция
Можно же монеты вынимать из стаканов?
источник

GS

Grigorii K. Shartsev in HolyJS, JavaScript-конференция
Да, вроде как иначе не решить. Скорее всего надо из одного стакана достать 1 монету, из второго  2 монеты и т.д. затем посмотреть на общий вес и поиграть с делимостью на k
источник
2018 December 11

US

Ujjwal Sharma in HolyJS, JavaScript-конференция
Проблема в том, что, поскольку вы можете весить только один раз, вам придется взвешивать несколько очков / монет вместе.

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

GS

Grigorii K. Shartsev in HolyJS, JavaScript-конференция
Vasiliy ¯\_(ツ)_/¯
На столе стоят 10 одинаковых стаканов. В каждом из них по 10 одинаковых монет.
Известно, что в одном стакане все монеты поддельные (весят на коэффициент k отлично от настоящих - k известно и одинаково для каждой из поддельных монет).
Необходимо с помощью ВСЕГО ЛИШЬ ОДНОГО взвешивания определить, в каком стакане поддельные монеты.
> весят на коэффициент k отлично

Имелось в виде в К раз или на К больше?
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
Из каждого стакана берётся разное количество монет, из первого 1, из второго 2 и так далее. Потом все взвешивается, и по разнице определяем, сколько нестандартных монет=>в этом стакане поддельные. У ребёнка такая задачка была, правда, с 6 мешками :)
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
Если меньше 10, то последняя цифра сразу равна номеру стакана
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
Правда, там на 1 больше весили поддельные
источник

US

Ujjwal Sharma in HolyJS, JavaScript-конференция
Наталья Семенихина
Из каждого стакана берётся разное количество монет, из первого 1, из второго 2 и так далее. Потом все взвешивается, и по разнице определяем, сколько нестандартных монет=>в этом стакане поддельные. У ребёнка такая задачка была, правда, с 6 мешками :)
Понимаю. Но как вы узнаете, какая именно монета из стопки из нескольких монет является поддельной?
источник

US

Ujjwal Sharma in HolyJS, JavaScript-конференция
Либо так, либо я правильно понял вопрос (спасибо гугл переводчик).
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
Я так понимаю, надо просто определить, в каком стакане поддельные. А это как раз по разнице весов.
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
Детская задача попроще, но на ней понятнее объяснять. 5 мешков, взяли по одной монете из каждого. 1 монета весит 10 грамм, 1 поддельная - 11. Получаем сумму, кратную 10, и остаток. Например, поддельные в 3 мешке. 10+20+33+40+50=153, остаток 3, значит поддельные монеты в 3 мешке.
источник

GS

Grigorii K. Shartsev in HolyJS, JavaScript-конференция
Наталья Семенихина
Из каждого стакана берётся разное количество монет, из первого 1, из второго 2 и так далее. Потом все взвешивается, и по разнице определяем, сколько нестандартных монет=>в этом стакане поддельные. У ребёнка такая задачка была, правда, с 6 мешками :)
Собственно вся суть задачи как раз в том, как из суммарного веса получить номер стакана, потому что это не совсем тривиально. (мы, напомню, веса монеты не знаем).

Если X — вес монеты, N — номер стакана, и сделали кучу, где i монет из i-го стакана, то суммарный вес получается:

X * sum(i, i=1 to N-1) + (X + K) * N + X * sum(i, i=N + 1 to 10) =
(сумма арифметической прогрессии) + сократили =
= KN + 55X (в принципи, такое выражение можно было сразу логически получить, да :D )
И вот теперь из него зная тольок К надо достать N, и это не совсем так просто, как в примере выше с детской задачкой
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
Да, задача сложнее, но по детской понятно, куда двигаться :)
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
И мне кажется, сразу К  в цикл не надо вводить. Составляем формулу так, как если бы вес у всех был одинаковый, потом вычитаем из реального веса, а уже разность смотрим на кратность К
источник

GS

Grigorii K. Shartsev in HolyJS, JavaScript-конференция
Наталья Семенихина
И мне кажется, сразу К  в цикл не надо вводить. Составляем формулу так, как если бы вес у всех был одинаковый, потом вычитаем из реального веса, а уже разность смотрим на кратность К
В любом случае в итоге вес кучи получается KN + 55X
источник

GS

Grigorii K. Shartsev in HolyJS, JavaScript-конференция
Как мы узнаем реальный вес?
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
по условию задачи - 1 взвешивание=реальный вес
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
и к из формулы убрать
источник

GS

Grigorii K. Shartsev in HolyJS, JavaScript-конференция
Наталья Семенихина
по условию задачи - 1 взвешивание=реальный вес
это что за условие?
источник

НС

Наталья Семенихина... in HolyJS, JavaScript-конференция
"Необходимо с помощью ВСЕГО ЛИШЬ ОДНОГО взвешивания определить, в каком стакане поддельные монеты."
источник