Заполните анкету о приезде, чтобы мы могли вас встретить. Возьмите с собой вещи и документы. Ждём вас!

Вступительная работа

Чтобы попасть в лагерь, нужно выполнить вступительную работу. Те, кто участвовал в олимпиадах или уже поступил в ЛКШ в этом году, могут не решать вступительную, но всё равно должны заполнить анкеты. Вступительная работа и анкеты будут доступны до 23:59 Московского времени 13-го июня.

Учебные параллели

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

Выбор параллели

Решите, хотите вы поступать в одну из алгоритмических параллелей или в параллель информационной безопасности K. Алгоритмические параллели условно упорядочены от младших к старшим, от D к A. Выберите наиболее младшую параллель из тех, в которых вы не знакомы со значительной частью программы. Вы должны владеть всеми или почти всеми темами всех предыдущих параллелей.

Не имеет смысла поступать в параллель выше вашего текущего уровня. От знания сложных алгоритмов мало толку без уверенного владения стандартными. Тем более бессмысленно нечестно заполнять тематическую анкету или несамостоятельно выполнять вступительную работу: последнее наверняка выявится проверкой на списывание, и вы вообще не поедете в ЛКЛ. Если вы всё же окажетесь в слишком сложной для вас параллели, преподаватели заметят это в первые дни лагеря и переведут вас в более подходящую. Верно и обратное: если вы окажетесь в слишком простой параллели, вас могут перевести выше. Но и то и другое чревато потерей времени в первые дни смены, поэтому отнеситесь к выполнению вступительной работы и заполнению тематической анкеты серьёзно.

Формат вступительной

Поступающим в параллели C′...A нужно решить практические задачи по программированию. Их принимает автоматическая тестирующая система. Зарегистрируйтесь в ней. Если вы решали вступительную в 2019 году, можете использовать старый логин. В тестирующей системе вы найдёте условия задач, и туда же будете сдавать решения — программы на одном из допустимых языков программирования. Поддерживаются: C, C++, Python 2, Python 3, Free Pascal, Delphi, Java, Go и FreeBASIC. Учитываются только правильные решения, то есть проходящие все тесты. У параллелей D и K особый формат вступительной, смотрите их описание ниже.

Решение вступительной

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

Зачисление

Для каждой параллели учитывается только суммарное количество решённых задач из неё. Решать можно вступительную для нескольких параллелей. Вы будете зачислены, если пройдете по конкурсу хотя бы в одну из них. Мы можем изменить параллель, в которую вы будете зачислены, если посчитаем нужным. Внимательно и честно заполняйте тематическую анкету, это тоже влияет на зачисление и определение параллели.

Поддержка

Узнать о том, как работать в тестирующей системе, и посмотреть примеры оформления программ вы можете в справке и FAQ. Прочитайте памятку участника краевой олимпиады. В ней разобраны частые ошибки решающих. Любые вопросы про вступительную работу и тестирующую систему задавайте по почте mail@sicamp.ru или в группе ВК.

Учебные параллели

D

6...7 классы

Основы программирования

Вы изучите

  • Основные принципы написания программ и работы в среде разработки.
  • Базовые типы данных и выражения языка программирования.
  • Базовые алгоритмы теории чисел, комбинаторики, теории графов.

Мы ожидаем, что вы

  • Умеете проводить простейшие математические рассуждения.
  • Знакомы с понятием алгоритма.
  • Не обязательно умеете программировать.
    Вступительная для параллели D

    Вступительная работа для параллели D состоит из семи теоретических задач и не требует умения программировать. Скачайте задачи вступительной. Нужно не только найти ответ к задаче, но и объяснить, почему он получается таким. Не страшно, если у вас получаются не все задачи. Оформите то, что получилось: возможно, этого хватит. Если какую-то задачу вы решили не до конца, всё равно оформите её. Это принесёт дополнительные очки.

    Оформите работу в Microsoft Word, Open Office или просто текстовым файлом. Можете оформить решение на бумаге, тогда отсканируйте или сфотографируйте его. Оформленную работу присылайте на почту d@sicamp.ru. В теме письма обязательно напишите ваши имя и фамилию. Вы можете отправить работу несколько раз, мы рассмотрим только последнюю версию.

Что изучали в ЛКЛ-2019
Работа со средой программирования. Ввод-вывод, работа с файлами. Целые типы данных, арифметические операции. Логический тип данных, логические операции. Стиль оформления программ. Циклы. Одномерные, многомерные массивы. Символы, строки. Написание функций, рекурсия. Признаки делимости. Остатки по модулю. Алгоритм Евклида. Квадратичные сортировки. Простые числа, делимость, факторизация числа за корень. Решето Эратосфена. Системы счисления. Понятие графа, его представление в программе.

C′

6...8 классы

Алгоритмы для начинающих

Вы изучите

  • Базовые алгоритмы теории чисел, комбинаторики, теории графов.
  • Базовые структуры данных.
  • Алгоритмы сортировки, в том числе быстрой.

Мы ожидаем, что вы

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

Вступительные задачи

  • Квартиры
  • Тестирование
  • Пугало
Что изучали в ЛКЛ-2019
Простые числа, делимость, факторизация числа за корень. Решето Эратосфена. Стек. Очередь. Строки. Квадратичные сортировки. Бинарный поиск. Введение в динамическое программирование. Рекурсия. Комбинаторика: формулы для количества, перечисление всех элементов. Понятие графа, его представление в программе. Обход графа в глубину, в ширину. Сортировка слияниями.

C

7...9 классы

Базовые алгоритмы

Вы изучите

  • Базовые структуры данных.
  • Техники бинарного поиска, динамического программирования, хеширования.
  • Классические алгоритмы теории графов.

Мы ожидаем, что вы

  • Уверенно владеете основами языка программирования.
  • Имеете опыт решения задач.
  • Знаете базовые алгоритмы комбинаторики и теории чисел.

Вступительные задачи

  • Тестирование
  • Пугало
  • Классные парты
  • Кибервступительная
Что изучали в ЛКЛ-2019
Стек. Очередь. Бинарный поиск. Введение в динамическое программирование. Наибольшая возрастающая подпоследовательность, наибольшая общая подпоследовательность. Куча, быстрая сортировка. Хеширование. Хеш-таблица. Понятие графа, его представление в программе. Обход графа в глубину, в ширину. Топологическая сортировка графа. Алгоритм Дейкстры. Алгоритм Флойда. Рекурсия, перечисление комбинаторных объектов. Определение комбинаторного объекта по номеру, и номера по объекту.

B′

7...10 классы

Практическое применение алгоритмов в олимпиадных задачах

Вы изучите

  • Применение и более глубокое изучение уже известных алгоритмов.
  • Практика решения задач с использованием нетривиальных приёмов и алгоритмов.

Мы ожидаем, что вы

  • Уверенно владеете основами языка программирования.
  • Знаете алгоритмы параллелей C′ и C.
  • Имеете опыт решения задач.

Вступительные задачи

  • Классные парты
  • Кибервступительная
  • Лорена
  • Музыкальный дуэт
Что изучали в ЛКЛ-2019
Сортировки. Жадные алгоритмы. Бинарный поиск. Тернарный поиск. События на прямой. Сканирующая прямая. Комбинаторика правильных скобочных последовательностей. Хеширование. Хеш-таблица. Обходы в глубину/в ширину на неявных графах. Алгоритм Дейкстры. Алгоритм Флойда. Алгоритм Форда-Беллмана. Техника двух указателей. Элементарная вычислительная геометрия: вектора, операции с ними, задание простейших геометрических объектов. Геометрия многоугольников, построение выпуклой оболочки множества точек.

B

8...10 классы

Алгоритмы и структуры данных

Вы изучите

  • Cтруктуры данных на основе деревьев.
  • Алгоритмы на строках и графах.
  • Продвинутые методы динамического программирования.
  • Задачи вычислительной геометрии.

Мы ожидаем, что вы

  • Уверенно владеете языком программирования.
  • Имеете опыт решения задач с применением алгоритмов.
  • Знаете основные алгоритмы на графах, алгоритм быстрой сортировки, основные структуры данных (стек, очередь, список, куча).
  • Уверенно владеете техниками перебора, динамического программирования.

Вступительные задачи

  • Лорена
  • Музыкальный дуэт
  • Красно-черный никнейм
  • Прог-рок
Что изучали в ЛКЛ-2019
Дерево отрезков. Разреженные таблицы. Декартово дерево по явному и неявному ключу. Наибольшая возрастающая подпоследовательность, наибольшая общая подпоследовательность. Динамическое программирование по подотрезкам. Динамическое программирование по подмножествам. Динамическое программирование по поддеревьям. Продвинутые применения обхода в глубину: топологическая сортировка, поиск мостов и точек сочленения. Алгоритм Дейкстры. Алгоритм Флойда. Алгоритм Форда-Беллмана. Алгоритм Прима. Алгоритм Краскала. Система непересекающихся множеств. Элементарная вычислительная геометрия: вектора, операции с ними, задание простейших геометрических объектов. Геометрия окружностей. Геометрия многоугольников, построение выпуклой оболочки множества точек. Эффективный поиск пары ближайших точек. Хеширование. Хеш-таблица. Алгоритм Кнута-Морриса-Пратта, Z-функция. Бор. Расширенный алгоритм Евклида. Обращение элемента по простому модулю. Понятие первообразного корня по простому модулю.

A′

9...10 классы

Алгоритмы и структуры данных++

Вы изучите

  • Примение алгоритмов и техник параллели B к решению задач.
  • Продвинутые алгоритмы: игры на графах, паросочетания, динамическое программирование по профилю.

Мы ожидаем, что вы

  • Решали сложные задачи и участвовали в олимпиадах.
  • Знакомы с темами параллели B: деревом отрезков, строковыми алгоритмами, алгоритмами на графах.

Вступительные задачи

  • Прог-рок
  • Современное искусство
  • Pixel art
  • ПСП на дереве
Что изучали в ЛКЛ-2019
Динамическое программирование по подотрезкам. Динамическое программирование по подмножествам . Динамическое программирование по поддеревьям. Динамическое программирование по профилю и изломанному профилю. Практика решения сложных задач динамического программирования. Дерево отрезков. Дерево Фенвика. Декартово дерево. Применение структур данных вместе с техникой сканирующей прямой. Хеширование. Хеш-таблица. Алгоритм Кнута-Морриса-Пратта, Z-функция. Бор. Алгоритм Ахо-Корасик. Алгоритм Прима. Алгоритм Краскала. Система непересекающихся множеств. Паросочетания в двудольном графе, алгоритм Куна. Игры на ациклических графах. Ретроанализ. Игра в ним и функция Гранди. Геометрия окружностей. Геометрия многоугольников, построение выпуклой оболочки множества точек.

A

9...10 классы

Продвинутые алгоритмы и решение олимпиадных задач высокого уровня

Вы изучите

  • Самые продвинутые алгоритмы, встречающихся на школьных олимпиадах: например, потоки, LCA, центроидная декомпозиция, суффиксные структуры.
  • Решение контестов на время в условиях приближенным к реальным олимпиадам.

Мы ожидаем, что вы

  • Имеете значительный опыт решения задач и участия в олимпиадах.
  • Уверенно владеете алгоритмами параллели B, в том числе структурами данных.
  • Могли ранее обучаться в параллели A в ЛКЛ или ЛКШ — мы подстроим программу под ваши знания, возможно организуем несколько групп.

Вступительные задачи

  • Современное искусство
  • Pixel art
  • ПСП на дереве

K

8...10 классы

Информационная безопасность

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

Заниматься будем двусторонне: сначала детально разбирать работу тех или иных частей компьютеров, операционных систем, сетей и т.д.; а потом будем придумывать как можно использовать это не совсем по назначению.

Параллель K вдохновлена CTF-соревнованиями по информационной безопасности. В отличие от традиционных олимпиад по информатике, для решения задач на таких соревнованиях нужно находить и использовать разного рода программные уязвимости. Для этого, в свою очередь, необходимо глубокое понимание того, как работают повсеместно используемые программы и протоколы. Такие умения полезны как для карьеры в области информационной безопасности, так и для любой работы с компьютерами.

    Вступительная для параллели K

    Задачи вступительной размещены на специальном портале. Зарегистрируйтесь там, здесь вы найдёте небольшую инструкцию по вступительной. Также вам понадобится заполнить специальную анкету для параллели K.

Бонусы

Параллель K

Если вы хотите поступить в параллель информационной безопасности K, вам нужно выполнить вступительную работу для этой параллели в любом случае. Независимо от олимпиад и ЛКШ.

Участникам олимпиад

Поступившим в ЛКШ

Если вы поступили в ЛКШ, но по каким-то причинам не можете туда поехать, мы готовы зачислить вас параллель соответствующего уровня. Если вы хотите поехать в ЛКЛ после ЛКШ, вступительную вам решать тоже не нужно (параллель мы выберем одной из следующих по уровню, и возможно изменим её по результатам зачёта в ЛКШ), но вашего зачисления мы не гарантируем — нам хочется, чтобы как можно больше ребят имели возможность поучиться.