Автор: ЛЯП (---.dialup.mtu-net.ru)
Дата: 30-07-03 18:45
Ух ты, оказывается у этой задачки не одно решение! Вот еще одно (правда, не мое)
ф - фальшивая
п - подозрительная
н - нормальная
т - тяжелая
л - легкая
1) взвешиваем 4п против 4п
Если 4п=4п, то ф среди остальных 4. Теперь у нас есть 8н и 4п
2') взвешиваем 3п против 3н, 1п остается
если 3п=3н, то ф - последняя оставшаяся, и за последнее взвешивание мы определяем, т она или л
если 3п>3н, то ф = т. Тогда при последнем взвешивании берем 1п против 1п. Т. к. мы уже знаем, что ф = т, то задачка решена.
если 3п<3н - то же самое, но ф = л
Если 4п>4п
2'') У нас получается
ПППП > пппп и 4н
Дальше взвешиваем
Пппп против пннн, ППП откладываем
если Пппп=пннн, то ф находится среди ППП, и она т. За последнее взвешивание ее вычисляем.
если Пппп<пннн, то ф находится среди ппп и она л. Далее аналогично.
если Пппп>пннн, то ф - либо П слева (тогда ф=т), либо п справа (тогда ф=л). При последнем взвешивании любую из них сравниваем с н и получаем ответ.
|
|