どのボトルが毒であるかを正確に見つけることができるアルゴリズムがあります。
1.最初のガラスにボトルの半分からワインを一滴注ぎます。ボタンを押す。
2.ガラスが壊れた場合、そのうちの1つは毒ですが、残りには毒はありません。次のガラスと半分のボトルでリピートポイント1、そのうちの1つは毒です。
3.ガラスが無傷の場合、毒のボトルのこの半分に、ボトルの残りの半分に毒瓶がありません。ボトルの別の半分を備えたリピートポイント1。

したがって、各ステップで1つのガラスが使用され、1つのガラスが使用され、ボトルの数が半分になり、その中には毒されたボトルがあります。したがって、誘導の方法により、タスクは任意の数のメガネとボトルによって要約されます。10ステップでは、この方法で2^10 = 1024ボトルの1つを識別できます。1000 <1024なので、10杯で十分です。
Существует алгоритм, которым можно точно узнать в какой бутылке яд.
1. Налить в первый бокал по капле вина из половины бутылок. Нажать на кнопку.
2. Если бокал разбился, в одной из них яд, а в остальных нет. Повторить пункт 1 со следующим бокалом и половиной бутылок, в одной из которых яд.
3. Если бокал цел, то в этой половине бутылок яда нет и отравленная бутылка в другой половине бутылок. Повторить пункт 1 с другой половиной бутылок.

Таким образом на каждом шаге будет потрачен один или ни одного бокала и вдвое уменьшится число бутылок, среди которых есть отравленная. Таким образом методом индукции задача обобщается на любое количество бокалов и бутылок. За десять шагов таким образом можно идентифицировать одну из 2^10 = 1024 бутылок. 1000 < 1024, поэтому десяти бокалов будет достаточно.