---------------------------------------------------------------

     OOOO   OOOO OOOOO   OOOO   OOOO OOOOO OOOOO  O    O  OOOOO
    O       O  O O       O  O  O       O   O    O O   OO  O
    O       O  O OOO     O  O  O       O   OOOOO  O  O O  OOO
    O      O   O O      O   O  O       O   O    O O O  O  O
     OOOO O    O OOOOO OOOOOOO  OOOO   O   OOOOO  OO   O  OOOOO

                 ooooo  ooooo   oooo  o   o ooooo
                 o    o o       o  o  o   o   o
                 ooooo  ooo     o  o   oooo   o
                 o    o o      o   o      o   o
                 ooooo  ooooo ooooooo oooo    o

          0   0  0000    0000  0000  00000 0   0 0    0
          0  0  0    0   0  0 0    0 0     0  0  0   00
          000   0    0   0  0 0    0 0000  000   0  0 0
          0  0  0    0  0   0 0    0 0   0 0  0  0 0  0
          0   0  0000  0    0  0000  0000  0   0 00   0



       Вот,  милые  мои, мы и попали в город Бердичев! В город,
где живет пара  чекнутых  колобков-детективов,  где  в  поисках
чего-бы стянуть шляются усатый бандюга Карбофос и усатый ворюга
Кот, где обитают полосатые слоны и гордые птицы, а также издают
районную Кривду.
       Одним  словом,  полный  дурдом! Ну и естесственно, любая
русская  народная  сказка  начинается  с  простого   и   самого
банального  похищения  слона.  Ну,  скажете  вы,  неужто  мы не
слышали, что все истории начинаются именно  так.  (Нииичего  не
ппонимаю...)
       Вобщем за таким малообещающим началом должно быть что-то
ну оччень ОРИгинальное. Да-да, вы конечно  же  догадались.  Это
целых  ДВА  детектива: Шеф (Серый такой - С.) и его Помощник (в
шарфике и пальто, Зеленом таком - З.). Итак (Сверим часы...):

       1.  Из  районной  газеты Кривды вы узнали, что похищение
произошло в зоопарке. Поэтому оттуда и начинаем. Однако  ворота
закрыты.  Посылаем  С.(Серого)  за  пожарным чайником и киркой.
Пусть С. сломает киркой забор.  Затем подергает за колокольчик.
З.(Зеленый)  идет  открывать окно в будке.  С. должен полить из
чайника бочку. Затем С. подбирает звонкую монету и снова звонит
в  колокольчик.  Сторожу  отдаем  найденную  монету и мы в зоо-
парке.

      2. С. будет исполнять роль пианиста на рояле в кустах. З.
будет листать страницы (ноты). Необходимо перевернуть  страницы
таким образом, чтобы у С. получалась полная кокофония. При этом
З.  будет  изображать  скачущего  барана.   Подводим   З.   под
перевернутый   указатель  клетки  со  Слоном  и  с  помощью  С.
извлекаем  приятные  звуки.  Теперь  табличка  показывает,  где
клетка со Слоном.

       3.  Отправляем  С.  за  граблями,  лейкой  и  секатором.
Используем лейку на пальму.  Пусть  З.  попробует  взять  банан
(запрыгнув на плечи С.). Направо на звериной тропе С. заботливо
укладывает грабли. Путь  свободен!  Теперь  З.  спокойно  может
взять  банан.  А  с помощью секатора - всю ветку. Посыла- ем С.
вывернуть кран фонтана  на  среднюю  мощность  (один  поворот).
Затем  повторяем  весь  трюк  с  бананами.  З.  оказывается  на
фонтане.  Пусть С. вывернет кран фонтана на  полную  силу  (еще
один поворот). Ну и для полного счастья посылаем С. к жирафу.

      4. Помещаем С. в дупло дерева. З. загоняет обезьяну таким
образом, чтобы она пробежала между С. и сломаным фонтаном.

       5.  Удовлетворяем  давнюю  мечту детства З. покопаться в
урне. Берем очень полезную  в  деле  открывания  люков  вещь  -
штопор.  Устремляемся  на  переход в тот момент, когда с правой
стороны проезжает серое такси. (Именно  серое!)   Спускаемся  в
люк.

       6.  Приятное  зрелище  - болтающиеся как сосиськи крысы.
Вобщем цель ясна: пройти  по  трубе  к  противоположному  люку.
Очень   помогает   такой   способ.    Указываем   мышкой   куда
передвигаться и, неотпуская кнопку мыши, ожидаем момент,  когда
крыса качнется в нужную сторону.

      7. Самая приятная часть! Сразу бросаем умного С. на войну
с холодильником, поскольку это займет у нас  наибольшее  время.
В   секрете   ключа   задействован   принцип  обратного  креста
(напоминает гробы из 7-го гостя). Задача в том, чтобы повернуть
все  ручки  в  горизонтальное  положение.  Поскольку комбинации
выдаются   случайным   образом,   то   совет    только    один:
переворачивайте  ручки  ряда  с  одинаковым расположением ручек
(все горизонтальные  или  вертикальные)  и  комбинируйте.  Пара
часов  тренировок  и  у  вас все получится! (Да вы медвежатник,
Шеф!).
        Отправляем   любопытного   З.  заглянуть  в  сахарницу,
подобрать  отвертку,  отодвинуть  штору,  подобрать  баллончик.
Используем баллончик в ванной.
       Вручаем  С. отвертку, ремонтируем выключатель и зажигаем
свет.  Отправляем С. в ванную и используем баллончик на злобное
чудовище. Быстренько посылаем З. за ключем, висящим над ванной.
Остается С. открыть замок на холодильнике и дернуть за ручку.

       8.  Посылаем  С. вытащить шнур от телевизора из розетки.
Пусть З. использует шнур так, как  ему  нравится.  Посылаем  З.
болтаться  с  балкона.  В след за ним отправляем С.. Появляется
Гнусный Мух. Пусть С. откроет верхний ящик стола с  телевизором
и  найдет  там мухобойку. Используем мухобойку на Гнусного Муха
дважды: на телевизоре и на вымпеле. Когда эта  сволочь  улетит,
быстренько кидем С. с балкона.

        9.   Отправляем   З.   отворить  чужое  окно  (справа).
Интеллигентного С. посылаем совершать неинтеллигентный поступок
с  тем  же  окном(Ущерб возместим.)  Берем осколок разбившегося
стекла и используем его на трос. Прыгаем в правое окно.

        10.   Берем  мыло  на  умывальнике  и  вантуз  рядом  с
умывальником. Отправляем С. открыть кран с водой (слева).  Пока
льется  вода  в  бачок,  З.  должен  закинуть  туда кусок мыла.
Посылаем С. заткнуть унитаз вантузом и дернуть за шнурок.  Пока
вантуз мокрый применим его на дверь.

        11.   Посылаем  З.  открыть  электрощит  (Электричество
кончилось...). Далее составляем С. следующую цепочку:

                +--   +------+
                |     |   |  |
                |     | +-+  |
                +-+  \| +-+  |
                | +---+ | +--+
                |       | O
                +-------+
    Лифт готов к использованию.

       12.  Вытаскиваем  С.  из  ящика с автоматом сам автомат.
Подставляем С. под град  ящиков  справа  таким  образом,  чтобы
получилась лесенка из четырех рядов просто ящиков. И отправляем
С. отрубить рубильник.

       13.  Находим  ножницы.  Рядом  с  ними  на полке краску:
красную и зеленую.  Слева от входа  на  крышу  лежит  лестница.
Подводим С. к надписи ЛЕТАЛПРОПАЛ рядом с баллоном с краном. По
плечам С. отправляем З.  открыть  кран.  С.  устраняет  поломку
шнура   и  отправляется  с  лестницей  к  воздушному  шару.  З.
проявляет свою меткость в метании красной и  зеленой  краски  в
Килоперьев.  А  затем благополучно перерезает ножницами веревку
воздушного шара.

       14. Задача этого уровня в том, чтобы летящая мимо ворона
врезалась в в воздушный шар. (Кота кидать не надо было!)

      15. Берем уроненную табуретку. Используем С. табуретку на
нижнюю  левую  веточку  центрального  дерева.  Загоняем  С.  на
табуретку  и  подводим  его  к  краю  ветки  прямо  под Слоном.
Подводим З. под эту ветку. Переправляем С.  на дерево с  Гордой
Птицей  (слева).  Устанавливаем  С.  на  крайнюю  левую ветку и
пытаемся дотянуться до Несчастного слуги. Используем З. Упавшую
флейту  на  дупло  центрального  дерева.  Заглянем  З. в дупло.
Используем для С. помощь Слуги. Переводим С. на  ствол  елового
дерева  справа.  У  правого края экрана замечаем нечто (?), что
оказывается еще одной трубой. Все три трубы  С.  используем  на
ствол  елового дерева и получаем лесенку. По лесенке добираемся
до еще одной флейты, которая и спасет слона. Уф! ВСЕ!


        +-------------------------------------------------------+
        |Проходил, рисовал, писал и мучался:  Гончаров Антон.   |
        +-------------------------------------------------------+
                                         Написано 13-10-97 в 02:17:02
     PS.  Если Вы можете добавить что-нибудь в это описание или
у  Вас  какие-нибудь  проблемы  с  ним   напишите   по   адресу
2:5030/121.18 или 2:5030/546.17, буду очень благодарен.

---------------------------------------------------------------
Unauthorized publishing or any commercial use without author's sanction
                       is strongly prohibited!
          All proposals and non-commercial use are welcome!
---------------------------------------------------------------



 From: Nikolay Igotty (nike@mph.phys.spbu.ru)

Программка для Pilot Bros, дабы там открывать сейф.
Ввод - переменная start, binary кодировка текущей конфигурации,
Вывод - набор пар описывающих, какую ручку надо перещелкнуть
(i-по горизонтали, j-по вертикали).
___________________________________________________________________
/* proggy to solve strongbox problem in Pilot Bros. game
   written by nike
*/
#include <stdio.h>
#include <stdlib.h>
#include <sys/types.h>

#define N_MAX 25
int i_a[N_MAX];
int j_a[N_MAX];

inline uint op(uint n, int i, int j){
  int  k;
  uint mask;

  mask = 0;
  for (k=0; k<4; k++) {
    mask |= 1 << (k + (j << 2));
    mask |= 1 << ((k << 2) + i);
  }
   return (((0xFFFF ^ (n & mask)) & mask) | (n & (mask ^ 0xFFFF)));
}

int main(){
uint start, cur;
long int counter;
int i,j,step,s;

 start = 63219;/* 1111011011110011  binary for the configuration like
                    1 1 0 0
                    1 1 1 1
                    0 1 1 0
                    1 1 1 1
                  here 1 means | state of trigger,
                       0 means - state of trigger
                  lock should open when it become  0000000000000000 :).
                */
/* start = 53103; */
for (counter = 0; counter < 500000000L; counter++){
cur = start;
printf ("%u\r",counter);
for (step=0; step < N_MAX; step++){
  i = (int) ((3.0*rand()/(RAND_MAX+1.0)+0.1));
  j = (int) ((3.0*rand()/(RAND_MAX+1.0)+0.1));
  i_a[step] = i; j_a[step] = j;
  if (!cur) {
    printf("Done in %d steps after %ld attempts!\n\n", step,counter);
    for (s=0; s<step; s++) printf ("i=%d j=%d\n",i_a[s],j_a[s]);
    exit(0);
  }
   cur = op(cur,i,j);
}
}
printf ("\n\n Sorry , but I can\'t\n");
return 0;
}


Популярность: 18, Last-modified: Wed, 12 May 1999 05:59:36 GMT