+7 (812) 703-02-02 info@hse.spbstu.ru
Для групп, занятия в которых проходят онлайн
Инструкция для подключения к Microsoft Teams.
При проблемах с подключением к Teams обратитесь в тех.поддержку support@avalon.ru
Подключение ребенка к занятию онлайн
Сообщать об этом необходимо заранее: если занятия в будние дни – не позднее 14:00, если занятия в субботу или воскресенье – не позднее 16:00 пятницы. В противном случае подключение невозможно.
Открыт набор в Академию информатики на 1-е полугодие 2022
Для обучающихся в АИШ запись в Личном кабинете.
Для новых слушателей запись через форму на странице курса или по телефону 703-02-02.
Начало занятий с 24 января.
08.12.2021 19:00 День открытых дверей Академии информатики для школьников
Расскажем о курсах, правилах поступления и ответим на вопросы.
Для участия нужна регистрация...
10.12.2021 19:00 День открытых дверей Академии информатики для школьников
Место проведения: филиал АИШ-Полюстрово (Полюстровский пр, д. 14-Б).
Для участия нужна регистрация...

Введение в олимпиадное программирование

C 9 класса | 12 занятий | Очно или онлайн

Длительность курса: 78 ак. часов (12 занятий по 4 ак. часа + 30 часов домашней работы)

О чём курс

Спортивное программирование – особый вид деятельности, увлекательный и азартный. Олимпиады по программированию бывают индивидуальными и командными, бывают официальными, дающими льготы при поступлении в ВУЗ, и совсем «домашними».

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

Что нужно для успеха? Прежде всего, умение читать задачу, увидеть в её описании путь к решению. Затем – опыт программирования, уверенное владение синтаксисом языка и инструментами отладки. Далее – знание стандартных приёмов решения задач, классических алгоритмов. И наконец, воля, внимание, стрессоустойчивость, умение работать и в команде, и самостоятельно.

Цель курса: дать школьникам знания, навыки и опыт, необходимые для участия в олимпиадах по спортивному программированию (как индивидуальных, так и командных), обеспечить организационную поддержку и руководство при участии в олимпиадах, помочь в выборе стратегии дальнейшего самосовершенствования.

Теоретический материал излагается преимущественно на алгоритмическом языке. Языками практических заданий являются С++, Visual Basic, Pascal, Python, C# и Java (учащийся может работать на любом из этих языков). Практики существенно больше, чем теории. Чередуется командная и индивидуальная работа.

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

Стилистика курса – креативность, соревновательность, сотрудничество.

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

Курс адресован школьникам 9-10 классов, уже владеющих навыками структурного и процедурного программирования.

Для курса есть очные и онлайн-группы.

Чему научим

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

  • Навыки работы с системами автопроверки, применяемыми на олимпиадах по программированию.
  • Навыки анализа объёмных постановок задач, примерной оценки сложности решения.
  • Умение использовать в программировании математические знания, анализировать свойства чисел.
  • Умение организовывать структурированные данные, размер которых определяется в ходе работы программы.
  • Навыки оценки вычислительной сложности алгоритма, объёма используемой при его реализации памяти.
  • Знания некоторых стандартных алгоритмов, часто применяемых в спортивном программировании.
  • Навыки организации командной работы на олимпиаде.
  • Оперативная информация о доступных олимпиадах по спортивному программированию, их особенностям и правилам.

Занятие 1

Введение

  • Особенности спортивного программирования.
  • Олимпиады по программированию: виды, правила, способы оценки ответов.
  • Примеры задач.
  • Способы организации ввода и вывода, применяемые на олимпиадах.
  • Оценка начального уровня учащихся – индивидуальная мини-олимпиада.

Занятие 2

Искусство выбора решаемой задачи

  • Примеры олимпиадных пакетов задач.
  • Техника работы с условием задачи.
  • Тренинги (индивидуальные и командный) по оценке сложности задач.

Занятие 3

Математика в программировании

  • Примеры задач, где решение находится математически проще, чем программно.
  •  Краткая сводка полезных программисту сведений из математики.
  • Решение задач.
  • Командный тренинг.

Занятие 4

Основные типы данных

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

Занятие 5

Использование больших объёмов данных

  • Массивы. Организация динамических массивов.
  • Полезные алгоритмы, связанные с массивами.
  • Проблема ограничений по памяти при олимпиадном программировании.
  • Обзор специализированных типов данных (стеки, списки) и инструментов для их реализации.
  • Индивидуальный тренинг – технически сложные задачи.

Занятие 6

Перебор вариантов как метод поиска решения

  • Способы организации перебора.
  • Простой перебор с параметром, с заданным числом параметров.
  • Индуктивный перебор: генерация варианта на основе предыдущего.
  • Индивидуальный тренинг.

Занятие 7

Перебор вариантов как метод поиска решения (продолжение)

  • Рекурсия как способ организации перебора.
  • Альтернативы рекурсии.
  • Эффективность по времени, примеры.
  • Командный тренинг с выбором задач из большого набора.

Занятие 8

Тестирование программы

  • Тестовые данные в олимпиадном программировании.
  • Самотестирование программы. Типы тестовых данных в зависимости от способа оценки результатов.

Организация работы команды

  • Варианты распределения ролей в команде.
  • Командный тренинг - тактический разбор пакета заданий реальной олимпиады.

Занятие 9

Оптимизация поиска решения

  • Способы ускорения перебора вариантов.
  • «Жадные алгоритмы», условия их применимости.
  • Командный тренинг с выбором задач из большого набора.

Занятие 10

Графы и деревья

  • Примеры задач, моделируемых посредством графов.
  • Способы представления графов в программе.
  • Обзор некоторых алгоритмов, связанных с графами.
  • Решение задач

Занятие 11

Командная олимпиада по программированию

Занятие 12

Разбор заданий командной олимпиады

Индивидуальная олимпиада по программированию – экзамен

Стоимость

19 500 ₽

Есть скидки от 10% до 20%. Узнать подробнее...

Как поступить

Для тех, кто еще не учится в АИШ:

  • Вступительное тестирование

Для уже обучающихся в АИШ:

Тест № ВПТ-538 Вступительный тест для обучения на семестре "Введение в олимпиадное программирование" (АИШ)
  1. Базовые математические знания, основы математической культуры.
  2. Опыт процедурного программирования на языке С++ или Pascal:
    • Типы данных, их объявление.
    • Операторы консольного ввода и вывода, присваивания.
    • Операторы для организации циклов и ветвлений.
    • Массивы и стандартные алгоритмы работы с ними (поиск, нахождение максимума, сортировка, сдвиг и т.п.).
    • Создание процедур и функций, способы передачи данных между подпрограммами.
    • Владение приёмами работы со строками (выделение и поиск подстроки).
    • Знание классических численных алгоритмов (НОД, выделение цифр числа).

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


Тест № ВКТ-510 Основы компьютерной грамотности (для АИШ)

Необходимы знания и навыки для успешного прохождения тестирования:

  • Понятия файла
  • Понятие папки
  • Расширение файлов
  • Работа с файловой системой: копирование, удаление, перемещение, поиск, создание файлов и папок
  • Горячие клавиши
  • Работа с оконными приложениями
  • Работа с мышкой
  • Устройство и принцип работы компьютера
  • Операционная система: что это такое, цели и задачи

Как записаться на занятия

Если ребёнок уже обучается, оставьте заявку в Личном кабинете


Если ребёнок ещё не обучается, заполните форму

Выберите группу

Академия информатики для школьников в цифрах

17 лет

успешной работы
в Политехническом университете Петра Великого

16

направлений обучения

83

учебные программы

3 500

школьников
проходят обучение
ежегодно

4

учебные площадки

36

компьютерных классов