Рубрика «Занимательные задачки»

Russian AI Cup 2018: CodeBall. Зрелищное 3D соревнование - 1

С 2012 года ежегодно проводится соревнование Russian AI Cup по написанию искусственного интеллекта и ботов, которые ожесточенно сражаются в виртуальном мире вместо своих владельцев. За все прошлые чемпионаты на платформе зарегистрировалось более 40 000 пользователей, которые прислали нам более 150 000 различных решений. Каждый новый чемпионат — это новая игровая задача со своими правилами, законами и механикой. Стараемся постоянно вносить новые идеи и фичи, чтобы игры из года в год становились еще более интересными и зрелищными, развивая наш мотор под капотом проекта и делая всё во славу нашего сообщества.

Этот год не стал исключением. Mail.Ru Group в сотрудничестве с Codeforces.com официально объявляют о датах чемпионата Russian AI Cup 2018 под названием CodeBall.

Итак, поехали!
Читать полностью »

В очередной раз ловлю себя на мысли о том, что «опять нечего посмотреть». Потому что хочется не слащавого и натянутого, а технического, эмоционального, заставляющего подумать и поискать после просмотра дополнительную информацию. Да, конечно, есть такие штуки как MR.ROBOT, но они настолько редки и фрагментарны, что практически полностью теряются на фоне океана откровенно дешевого ширпотреба (да и вообще, хакеры эти вездесущие уже порядком поднадоели ). Вроде бы можно попробовать Discovery или National Geographic, но учится мне довелось в школе советского образца, с советскими преподавателями, поэтому вся эта манная каша «просто о сложном» — не лезет совершенно. В общем, по описанным выше причинам, висел у меня в сознании этакий watchdog на заполнение вакантного места на «видео-полке».

И вот недавно, занимаясь по долгу службы инерционными накопителями и просматривая статьи широко известного в узких кругах профессора Гулиа, я вдруг натолкнулся на его рассказ о невероятно популярной в советское время программе «Это вы можете». Удивительно, но о такой программе я не слышал, как не слышали и мои друзья и знакомые. Беглый просмотр пары-тройки найденных на youtube выпусков заставил потирать руки в предвкушении отличного материала. Если интересно, что из этого получилось — прошу под cut.

Это вы можете (ЭВМ). Рассказ о забытой телепередаче - 1

Читать полностью »

Вычисление весового спектра линейного подпростанства в Wolfram Mathematica - 1

Процесс вычисления весового спектра

Первопричина

Данная статья обязана своим появлением одному достаточно давнему вопросу, который был задан в группе русскоязычной поддержки Wolfram Mathematica. Однако, ответ на него сильно разросся и в итоге стал жить самостоятельной жизнью и даже обзавелся собственными проблемами. Как понятно из названия статьи, задача была посвящена вычислению весового спектра, а значит напрямую относится к дискретной математике и линейной алгебре. Здесь же демонстрируется решение на языке программирования Wolfram Language. Не смотря на то, что суть задачи очень проста (для простых базисных векторов она вполне решается в уме), гораздо больший интерес представляет процесс оптимизации алгоритма нахождения весового спектра. Авторы придерживаются мнения, что рассматриваемая в данной статье задача и способы ее решения очень хорошо показывают способы применения таких приемов в языке Wolfram как компиляция и параллелизация. Таким образом основная цель, это показать один из эффективных способов ускорения кода в Mathematica.

Читать полностью »

Я несколько раз упоминал на Хабре программу «Check Point Security Academy»: суть её в том, что фирма Check Point летом объявила конкурс в формате «Capture the Flag», где не важен прошлый опыт участника, а важны только его способности к распутыванию кибер-головоломок. По результатам этого конкурса фирма набрала двадцать участников на трёхмесячный профессиональный курс по кибер-безопасности, и все участники с самого начала курса получают полную зарплату специалиста по КБ, под обязательство отработать в фирме два года после окончания курса.

Головоломка «Test My Patience» от Check Point Security Academy - 1
В соревновании CTF флаг может быть даже картинкой, например такой.

Отбор участников завершился в августе, но сайт конкурса продолжит действовать до следующего лета, и я приглашаю желающих зарегистрироваться и попробовать свои силы ради спортивного интереса. Конкурс состоит из 12 головоломок различной сложности, оцененных от 10 до 150 очков.
Здесь я хочу разобрать головоломку «Test My Patience» из категории «Surprise». Она средней сложности (50 очков), и вот её полный текст:

Hi there,
We found This executable on the local watchmaker's computer.
It is rumored that somehow the watchmaker was the only person who succeeded to crack it.
Think you're as good as the watchmaker?
Note: This file is not malicious in any way

По ссылке — 32-битный бинарник для Windows, на который ругаются некоторые антивирусы, но если его всё же запустить, то выглядит он так:

Головоломка «Test My Patience» от Check Point Security Academy - 2

Внутри бинарник зашифрован; запускаться под отладчиком он отказывается; если к нему к запущенному попытаться подключить отладчик — он моментально завершается. Вероятно, специалисты из Check Point обернули свою головоломку в крипто-пакер, позаимствованный у какой-то малвари.
Как же будем угадывать число, загаданное часовщиком?
Читать полностью »

image

Меня всегда удивлял JavaScript прежде всего тем, что он наверно как ни один другой широко распространенный язык поддерживает одновременно обе парадигмы: нормальные и ненормальное программирование. И если про адекватные best-практики и шаблоны прочитано почти все, то удивительный мир того, как не надо писать код но можно, остается лишь слегка приоткрытым.

В этой статье мы разберем еще одну надуманную задачу, требующую непростительных надругательств над нормальным решением.

Читать полностью »

19 и 20 октября в Петербурге прошла конференция Joker — лучшее мероприятие для тех, кто любит то же самое, что и мы: крутые доклады, общение с продвинутыми Java-экспертами и задачки. Не будем нахваливать третий выпуск задач от GridGain (1, 2), лучше процитируем отзывы участников:

«Их задачи показались глупыми и не относящимися к ИТ»
«Отличные задачи, как всегда (хоть ни одной и не осилил)»
«Наркомания в задачах»
«Топовые задачи, как всегда»

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

Выход из колеса Сансары, экстремизм и немного зелёнки — разбор задач из буклета GridGain на конференции Joker 2018 - 1
Читать полностью »

Недавно в Самаре прошли международные открытые соревнования по информационной безопасности VolgaCTF. Владимир Дрюков, директор центра мониторинга и реагирования на кибератаки Solar JSOC, рассказал участникам соревнований о трех реальных атаках и спросил, как можно было их выявить. Проверьте, сможете ли вы ответить правильно.
Читать полностью »

Разбор игры от Одноклассников на Joker 2018 - 1

Всем привет! Несколько дней назад мы выкладывали пост про задачки, которые давали на конференции Joker 2018. Но это еще не всё! В этом году специально для Joker мы сделали целую игру с не менее интересными задачками по Java (и не только), про которую и расскажем сегодня.
Читать полностью »

Исследование показало, что люди предпочитают сложные методы, потому что привыкли к ним

Понять статистику нам мешает наше нежелание меняться - 1
Незаконное обвинение Салли Кларк в убийстве двоих её сыновей – знаменитый пример неправильного использования статистики в суде

В 1999 году британский солиситор Салли Кларк попала под суд за убийство двух своих малолетних сыновей. Она утверждала, что оба они стали жертвами синдрома внезапной младенческой смерти. Эксперт, свидетель обвинения, Рой Мидоу, утверждал, что шансы на то, что этот синдром заберёт жизни двух младенцев из богатой семьи, составляли 1 к 73 млн, что уравнивало их с шансом ставить на скачках на лошадь с коэффициентом 80 к 1 четыре года подряд и всё время выигрывать. Жюри присяжных приговорило Кларк к пожизненному заключению.
Читать полностью »

Так вот, сообщество, прошу предоставить мне шанс удивить вас с третьего раза, в предыдущем решении я задействовал питон, думал вот тут привлеку внимание знатоков и мне сразу скажут, да зачем это делать, вообще есть же регулярные выражения — сделал и все там точно будет работать, этот наш питон может выдать и поболее скорости.
Следующая тема статьи должна быть другая задача по очереди, ан нет меня не оставила еще первая, что можно сделать, чтобы получить еще более быстрое решение, так как победа на сайте увенчалась еще одним соревнованием.
Я написал реализацию которая в среднем была вот такого вида скорости, значит есть еще 90 процентов решений, которых я не заметил, что кто-то знает как ее решить еще быстрее и он молчит, и посмотрев две предыдущие статьи не сказал: ах, если это вопрос производительности, тогда все понятно — тут пролог не подходит. Но с производительностью сейчас все нормально, представить себе программу, которая будет запущена на слабом железе не возможно, "в конце концов, зачем об этом думать?"

Вызов

Решить задачу еще быстрее, там был питон и было время, и есть на питоне более быстрое решение?

Занимательный пролог #3 - 1
Мне сообщают "Runtime: 2504 ms, faster than 1.55% of Python3 online submissions for Wildcard Matching."

Читать полностью »