воскресенье, 19 февраля 2012 г.

Нормальный алгоритм

Нормальный алгорим Маркова представляет собой упорядоченный набор правил замен подстрок. Например, если у нас есть алгоритм
"Мой" -> "Моя"
"дядя" -> "тётя"
то, применив его к строке "Мой дядя самых честных правил", мы получим строку "Моя тётя самых честных правил".

Другими словами, алгоритм Маркова действует следующим образом:
1. Просматривая список правил сверху вниз, найти первое правило, которое применимо к текущей строке.
2. Если такого правила нет, то закончить алгоритм.
3. Если правило нашлось, то выполнить подстановку и перейти на шаг 1. При этом, если левая часть правила содержится в строке более одного раза, то будет заменено только самое левое вхождение.

Напишите нормальный алгоритм, который будет складывать двоичные числа. То есть, подав ему на вход строку "10+11", мы должны получить на выходе строку "101".

Для проверки решения можно воспользоваться онлайн интерпретатором:

Волшебное число

Назовём волшебным натуральное девятизначное число, которое обладает следующими свойствами:
1. В нём содержатся по одному разу все цифры от 1 до 9 (т.е. все цифры кроме нуля).
2. Само волшебное число делится на 9. Если из него вычеркнуть последнюю цифру, то оставшееся восьмизначное число будет делиться на 8. Если из волшебного числа вычеркнуть последние две цифры, то оставшееся семизначное число будет делиться на 7. И так далее: вычёркивая из волшебного числа n последних цифр, мы будем получать число, которое делится на 9-n.

К примеру, если бы число 123456789 являлось волшебным (оно им не является), то число 12345678 делилось бы на 8, 1234567 делилось бы на 7, 123456 делилось бы на 6 и так далее.

Найдите это волшебное число (оно единственное).

Разумеется, эту задачу можно решить тупым перебором на компьютере. Однако, пользуясь знакомыми с детского садика признаками делимости, задачу можно решить и на бумаге, сократив пространство перебора до десятка вариантов.

5 произведений

Я задумал 4 положительных числа (не обязательно целых): a, b, c и d. Очевидно, что из них можно составить 6 попарных произведений: a*b, a*c, a*d, b*c, b*d и c*d. Я скажу Вам, чему равны 5 из них, но не уточню, каким выражениям они соответствуют. Вот эти произведения: 2, 3, 4, 5, 6.

Чему равно шестое произведение?

суббота, 26 ноября 2011 г.

100 узников, 100 коробок

Тюремщик предлагает 100 узникам сыграть в следующую игру. В одной из комнат он поставит в ряд 100 коробок и случайным образом распределит по коробкам бумажки с именами узников (имена всех 100 узников различны, каждое имя попадёт ровно в одну из коробок).

Узники будут по одному заходить в комнату под присмотром тюремщика. После этого узник получает 50 попыток для того, чтобы найти в одной из коробок своё имя. Это означает, что он открывает любую коробку, читает имя на бумажке, кладёт бумажку обратно, закрывает коробку, выбирает следующую и так далее. После этого, независимо от результата, он возвращается к себе в камеру.

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

Оставлять какие бы то ни было знаки в комнате с коробками нельзя, тюремщик строго за этим следит. Можно даже считать, что тюремщик подготовил 100 идентичных комнат с коробками (с одинаковым распределением бумажек по коробкам).

Если каждый узник будет выбирать очередную коробку случайным образом, он найдёт своё имя с вероятностью 1/2. Вероятность того, что все 100 узников найдут своё имя, равна 1/(2^100), т.е. ничтожно мала. Могут ли они увеличить вероятность выигрыша, выбрав правильную стратегию?

воскресенье, 20 ноября 2011 г.

3 дочери

Встретились два математика, и между ними произошёл такой разговор:
- У меня три дочери.
- Здорово! А сколько им лет?
- Произведение их возрастов равно 72, а сумма возрастов равна номеру того трамвая.
- Мне всё равно не хватает данных.
- Старшая любит мороженое.
- Тогда всё понятно.

Сколько лет дочерям?

воскресенье, 13 ноября 2011 г.

Дмитрий Медведев и машина

Дмитрий Медведев привык возвращаться с работы домой на электричке. Каждый день ровно в 7 часов вечера он прибывает на электричке на свою станцию. Его жена каждый вечер выезжает из дома на машине с таким расчётом, чтобы ровно в 7 часов встретить мужа на станции и отвезти его домой.

Однажды, устав после бадминтона, Дмитрий Медведев отпросился с работы немного пораньше и приехал на свою станцию в 18:05, то есть на 55 минут раньше, чем обычно. Чтобы не ждать жену на станции, он пошёл пешком ей навстречу. Встретив жену по дороге, он сел в машину, и они вместе вернулись домой на 10 минут раньше обычного.

Во сколько раз скорость машины выше скорости Дмитрия Медведева?

воскресенье, 6 ноября 2011 г.

12 монет, 3 взвешивания

Есть 12 монет, одна из которых фальшивая. При этом неизвестно, в какую сторону она отличается от настоящих, т.е. она может быть как легче, так и тяжелее. В вашем распоряжении чашечные весы без гирь, как в аптеке. Нужно за три взвешивания найти фальшивую монету, а также выяснить, тяжелее она или легче.