Size: a a a

2019 November 08

PM

Pavel 🦇 Malyshev in JSNN 🤔 (GSNN)
Val N
Вот и вопрос нафига вторые весы? И первый вопрос - как чашечные весы могут быть не точными, они же ничего не взвешивают, они просто сообщают о наличии баланса на чашках.
очевидно на одной из чашек внизу приварена гайка
источник

IF

Infant Frontender in JSNN 🤔 (GSNN)
Pavel 🦇 Malyshev
очевидно на одной из чашек внизу приварена гайка
Тогда мы можем выявить неточные весы опытным путем через наблюдение. Задача решена
источник

ОХ

Олег Хлевнов in JSNN 🤔 (GSNN)
источник

DS

Dimko Sh in JSNN 🤔 (GSNN)
источник

NS

Nick Shevrov in JSNN 🤔 (GSNN)
Кто хорошо Jest знает, как там можно к каждому сьюиту докинуть динамическую мета инфу? В имя сьюита динамически добавить не получится.
источник

NS

Nick Shevrov in JSNN 🤔 (GSNN)
Сейчас сделал через кастомный матчер, который всегда проходит, но отдаёт сообщение (не в консоль). Правда для этого пришлось форкнуть либу для процессинга результатов
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Как себя ведут фальшивые весы? Они всегда показывают равенство при равном количестве монет? Или как-то по-другому себя ведут?
источник

🧨

🧨 ethorz in JSNN 🤔 (GSNN)
Sergey Smyshlyaev
Как себя ведут фальшивые весы? Они всегда показывают равенство при равном количестве монет? Или как-то по-другому себя ведут?
Этой информации нет.
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Тогда нужно самому додумывать условия задачи
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
И решать задачу которую сам додумал
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Если предположить что “неточные” весы просто недостаточно точны и всегда показывают равенство при одинаковом количестве монет, то решение такое:
1. Берём 2 кучки по 4 и одну монету оставляем в стороне (назовём её монета X). Взвешиваем на первых весах.
1-a. Если они показывают неравенство, то мы попали на рабочие весы, находим в более лёгкой кучке фальшивую монету на этих же весах в два взвешивания.
1-б. Если они показывают равенство, то либо первые весы неточные, либо монета X фальшивая либо и то и то верно. Вариант когда первые весы точные, а монета X настоящая - иключён. Следовательно исключён вариант что вторые весы неточные, а монета X настоящая.
2. Далее используем на вторых весах стандартный алгоритм для 9 монет. Но используем его так, чтобы в случае выпадания равенства последней монетой была монета X. Если при стандартном алгоритме где-то выпало неравенство, то вторые весы рабочие и всё хорошо. Если при стандартном алгоритме оба взвешивания дали равенство, то монета X фальшивая независимо от того, точные или неточные вторые весы (см 1-б)
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Infant Frontender
К примеру отбросим одно из условий - разыне весы. Предположим что весы одни.

Чтобы найти фальшивую монету, разделим 9 монет на 3 стопки по 3 штуки.

Потом измеряем их. Если на весах - одинаковый вес, тогда фальшивка в той стопке, которая на столе. В противном, на весах.

Далее определяем фальщивку из стопки. За 2 взвешивания найдем ее.

Но вот как определить это на разыных весах? 🤔
Вот так ^
источник

IF

Infant Frontender in JSNN 🤔 (GSNN)
Sergey Smyshlyaev
Если предположить что “неточные” весы просто недостаточно точны и всегда показывают равенство при одинаковом количестве монет, то решение такое:
1. Берём 2 кучки по 4 и одну монету оставляем в стороне (назовём её монета X). Взвешиваем на первых весах.
1-a. Если они показывают неравенство, то мы попали на рабочие весы, находим в более лёгкой кучке фальшивую монету на этих же весах в два взвешивания.
1-б. Если они показывают равенство, то либо первые весы неточные, либо монета X фальшивая либо и то и то верно. Вариант когда первые весы точные, а монета X настоящая - иключён. Следовательно исключён вариант что вторые весы неточные, а монета X настоящая.
2. Далее используем на вторых весах стандартный алгоритм для 9 монет. Но используем его так, чтобы в случае выпадания равенства последней монетой была монета X. Если при стандартном алгоритме где-то выпало неравенство, то вторые весы рабочие и всё хорошо. Если при стандартном алгоритме оба взвешивания дали равенство, то монета X фальшивая независимо от того, точные или неточные вторые весы (см 1-б)
👍
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Давайте обобщим задачу: у нас есть N монет и M весов. Среди монет ровно одна фальшивая (легче других), среди весов ровно одни достаточно точны чтобы её определить. Найдите необходимое количество взвешиваний как функцию N и M
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Кстати, мне кажется алгоритм выше будет работать даже в случае когда мы не знаем есть ли неточные весы среди наших двух (т.е. когда либо оба точные либо одни точные другие неточные). То есть достаточно того чтобы хотя-бы одни весы были точными.
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Соответственно и в обобщённой задаче можно так же сказать - M весов и среди них есть хотя-бы одни точные
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
То есть в обобщённой задаче ответ будет M - 1 + log3(N) - 1
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Хотя СТОП
источник

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Если монет чётное количество, то у нас проблемы 😃
источник
2019 November 10

SS

Sergey Smyshlyaev in JSNN 🤔 (GSNN)
Господа, с create-react-app с 1 версии на 3 как-то можно автоматически мигрировать?
источник