Рубрика «олимпиадные задачи»

Секретная плата с китайского экзамена по электронике - 1

Привет! Китай является мировым лидером в производстве электроники во многом потому, что имеет систему образования, ориентированную на развитие этой отрасли.

Сегодня мы исследуем интересное учебное пособие из Китая, предназначенное для проверки базовых знаний по схемотехнике и умения собирать и налаживать электронные приборы.
Читать полностью »

Секретная плата с китайской олимпиады по электронике - 1

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

Здесь и секретный код, который нужно расшифровать, и нестандартное применение десятичного счётчика-дешифратора К561ИЕ8 (CD4017), и две ошибки, намеренно внесённые в плату. К обычному мультивибратору на КР1008ВИ1 (NE555) добавлены RC-фильтры, позволяющие наблюдать изменение формы сигнала.

А ещё имеются тиристор и тональный декодер на специализированной микросхеме ФАПЧ УР1101XA01 (LM567). Так на печатной плате размером 112 на 68 мм разместился целый мир электронных приключений.Читать полностью »

Go School

Как вы знаете, в середине мая Ozon объявил о запуске школы программирования на языке Go. Обещали следующее:

  • бесплатное обучение
  • возможность получить знания по реальной разработке на Go от Ozon
  • возможность получить работу в Ozon

Чтобы попасть в школу, нужно было:

  • иметь опыт промышленного программирования
  • пройти тестовые задания по программированию на платформе Яндекс.Контест
  • пройти skype-собеседования

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

Тогда же было озвучено число студентов, которое готовы принять в Школу — около 40 человек.

Так понемногу условия поступления прирастали новыми пунктами, среди добавленных также значилось:

  • желательно проживать в Москве
  • быть гражданином РФ
  • возраст старше 18 лет

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

Вроде все выглядело неплохо, условия не такие сложные и вполне выполнимые.

Ozon go school: Как не нужно проводить отбор - 1
Читать полностью »

Джулия в лабиринте - 1

Разбирая одну олимпиадную задачу мы отправимся по петляющим коридорам генерации лабиринтов и их прохождения, а также увидим, что на языке Julia простота реализаций алгоритмов граничит с их псевдокодом.

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

Привет!

Недавно решал задачи с архива Timus Online Judge и наткнулся на раздел под названием задачи динамического программирования. Задачи такого типа вызывают у меня особый интерес, потому что зачастую такой подход обеспечивает быстроту и элегантность решения. Что же такое — динамическое программирование?

Динамическое программирование — это подход к решению задач, при котором происходит разбение на подзадачи, которые «проще» в сравнении с исходной. Слово «динамический» близко по значению к «индуктивный»: предполагается, что известен ответ для какого-то значения $k$, и хочется найти ответ для $k+1$. В математике это называется индуктивным переходом, и составляет основную идею динамического программирования.

Простые примеры

Наиболее яркой и показательной задачей является задача вычисления $n$-ого числа последовательности Фибоначчи. Читать полностью »

image

Пятого марта прошел финальный раунд Технокубка — олимпиады по программированию для школьников. В этом году в ней приняли участие 3000 человек, 400 из которых прошли в финал. Предлагаем вам взглянуть итоги финала и разбор задач:

A. Андрюша и носки
B. Место встречи изменить нельзя
C. Андрюша и разноцветные шарики
D. Иннокентий и футбольная лига
E. Подземная лаборатория
F. Аксель и Марстон в Битландии
G. Андрюша и живые барьеры
H. Автобусы и интранет

Что такое Технокубок? Это олимпиада по программированию для учащихся 8-11 классов, организуемая Mail.Ru Group совместно с МГТУ им. Баумана и МФТИ. Она состоит из трех этапов: ознакомительного (онлайн), отборочного (онлайн) и заключительного (очно).

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

image

В августе этого года в Казани прошла Международная олимпиада по программированию для школьников — IOI 2016. Российская команда стала второй в общем зачете.

Один из серебряных медалистов, Денис Солонков из г. Мытищи, сделал разбор задачи «Обнаружение молекул», которая предлагалась участникам олимпиады.

Денис Солонков — многократный победитель Всероссийских олимпиад по программированию и Moscow CTF School, выпускник Школы программистов, ныне студент ВШЭ.Читать полностью »

Компания Mail.Ru Group совместно с МФТИ и МГТУ им. Н. Э. Баумана подвели итоги Технокубка — первой олимпиады по программированию для учащихся 8–11-х классов. За звание самого талантливого молодого программиста сражались школьники более чем из 20 городов России и СНГ. Всего на олимпиаду зарегистрировались 2132 участника, 113 приехали на очный финал, который проходил одновременно на двух площадках: в МГТУ им. Н. Э. Баумана и МФТИ. Награждение состоялось в офисе Mail.Ru Group.

Разбор задач финала Технокубка 2016 - 1

У ребят было три часа на решение семи задач, которые составляли преподаватели и специалисты ведущих технических вузов России. Последнюю, самую сложную, решил только один из участников — Владислав Макеев, который в итоге и занял первое место. Всего призёрами стали 27 участников олимпиады, они разделили между собой дипломы I, II и III степени. Победители (диплом I степени) получили дополнительные восемь баллов для поступления, обладатели дипломов II и III степени — по шесть баллов. Первое место занял Владислав Макеев (Москва, 11-й класс), второе — Александра Дроздова (Нижний Новгород, 10-й класс), третье — Григорий Резников (Москва, 11-й класс). Полный список победителей доступен по ссылке. В этом посте мы предлагаем вам ознакомиться с задачами финала и их решениями.
Читать полностью »

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

Разбор задачи «Зеркало в коридоре» и негодование - 1
Читать полностью »

Мы разрабатываем проект CRIU (Checkpoint/Restore in Userspace) и у нас возникла достаточно интересная задача о том, как восстановить оригинальное дерево процессов. Я предлагаю вам попытаться решить ее.

Задача

CRIU — это утилита, которая позволяет сохранить состояние процессов на диск и постановить их позднее на этой или на любой другой машине. Одной из подзадач восстановления является нахождение последовательности действий для того, чтобы восстановить дерево процессов. Входные данные содержат набор параметров для каждого процесса: уникальный идентификатор (PID), ссылку на родителя (PPID), идентификатор сессии (SID).

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


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js