вторник, 12 ноября 2013 г.

Без седла

Один монах сказал учителю Суку: "Я изучал Ваш код, чтобы учиться на Вашем примере, но в одном вопросе я так и не разобрался".

Монах развернул распечатку кода. "Рассмотрим это крошечное приложение, позволяющее искать ошибки в лог-файлах. Я бы сделал всю обработку в классе приложения. Однако, Вы определяете множество дополнительных классов: интерфейс LogFileReader, который определяет только метод readEntry; класс LogFileEntry для возвращаемых методом объектов; класс SimpleLogFileParser, являющийся единственной реализацией интерфейса! Зачем вся эта формальность для такого маленького проекта?"

Суку ответила: "Отправляйся в конюшню, расседлай моего коня и скачи на нём на вершину горы по Дороге Пьяной Змеи. Затем скачи вниз и сообщи, что узнал".

Тем же вечером монах вернулся грязным и в синяках. "Я узнал, что Ваша лошадь не любит скакать без седла. А также, что можно скатиться с обрыва, если она сбросит".

Суку выдала седло, нагрудник, уздечку, удила и вожжи, сказав: "Не имеет значения, насколько короток путь, всадник должен быть абсолютно уверен, на чём сидит и как держится".

Монах потёр огромную шишку на голове. "А в чём будет уверена лошадь со скверным характером?"

"Что на ней будут скакать", - сказала Суку.

Original: Bareback

Латекс сменили

Недавно я обнаружил, что в Cygwin поменяли TeTex на TexLive и не сразу сообразил, как настроить русский язык. Оказалось, что всё стало проще и надо только поставить texlive-collection-langcyrillic.

Туда и обратно

Задали мне задачку, но сказали, что решать надо в уме, ибо это олимпиадная задача для учеников 4-го класса:
От противоположных берегов реки одновременно отходят два парома и перпендикулярно берегам пересекают реку. Скорости у паромов постоянны. Паромы встречаются друг с другом на расстоянии 500 м от одного берега. Прежде чем плыть обратно, оба парома стоят у берега одинаковое время. На обратном пути они встречаются на расстоянии 300 м от другого берега. Какова ширина реки?
С одной стороны, задача показывает, насколько хорошо вы знаете математику и можете ли решать квадратные уравнения. Я сначала так и решил, а только потом вывел более простой способ, позволяющий значительно сократить количество вычислений.

С другой стороны, если вы, не встречая раньше задач такого плана, смогли сразу найти лёгкий способ, то это действительно круто.