Если подросток мечтает поступить в хороший вуз на IT-специальность, у него две дороги — олимпиады или ударная подготовка к ЕГЭ по информатике. Но одно не всегда отменяет другое: даже если завоевать золото на престижном турнире программистов, от госэкзамена всё равно не отвертеться. «Мел» и 1С объясняют, чем один путь отличается от другого и как достичь отличных результатов на каждом из них.
Как устроены олимпиады по информатике
Проще всего, когда ребёнок в седьмом или восьмом классе уже решил, что будет программистом. Впереди полно времени, чтобы прокачать знания алгоритмов, языков программирования и поучаствовать в олимпиадах. Начнём с того, что они делятся на два типа: проектные и олимпиады по спортивному программированию.
Конкурс проектов подойдёт, если школьник больше любит долгосрочные задачи, а не работу на скорость. Здесь важно детально продумывать идею проекта и находить самое удачное решение. Проектные олимпиады принадлежат конкретному вузу. Например, «Старт в науку» (МФТИ), «Юниор» (МИФИ) или «Шаг в будущее» (МГТУ имени Баумана). Плюс в том, что свой проект можно заявить на все три конкурса сразу.
Участие в олимпиадах по спортивному программированию принесёт больше бонусов. Правда, здесь нужно уметь быстро придумать и написать решение, чтобы оно работало корректно. При этом не важно, насколько красиво оформлен код: главное, чтобы он решал задачу. Высший пилотаж — Всероссийская олимпиада школьников по информатике. Если вы выбираете Всерос, будьте готовы посвящать ему всё своё время, интенсивно готовиться и иногда даже жертвовать другими предметами. Вас ждёт четыре этапа — школьный, муниципальный, региональный и финальный. Диплом победителя или призёра заключительного этапа позволит поступить без вступительных испытаний в любой вуз и освободит от ЕГЭ в принципе (но школа, скорее всего, всё равно попросит сдать госэкзамен, даже если вам он уже не пригодится). А самое главное, можно подстраховаться — получить диплом ещё в восьмом классе и потом не переживать о поступлении: он действует четыре года.
Кроме Всероса, бывают так называемые уровневые олимпиады — их проводят как вузы, так и крупные IT-корпорации. Например, олимпиада «Ломоносов» (МГУ), «Высшая проба» (ВШЭ), Открытая олимпиада школьников по программированию (МФТИ, МГУ и 1С). Готовиться к ним нужно заранее, но актуальны они именно для 11 класса. Уровень олимпиады — первый, второй или третий — каждый год утверждают на государственном уровне, и в зависимости него победители и призёры получают разные преимущества. Бывает так, что за один и тот же диплом в одном вузе дают 100 баллов по информатике, в другом — зачисляют без экзаменов. Впрочем, дипломанты олимпиад всё равно должны подтвердить свои льготы, сдав ЕГЭ по информатике не менее чем на 75 баллов.
В олимпиадах по спортивному программированию (как во всероссийской, так и в уровневых) есть минус: конкуренция выше, чем в проектных. Но при этом гораздо ниже, чем среди сдающих ЕГЭ.
Как лучше готовиться
1. Найти хорошего преподавателя
Чтобы круто выступать на соревнованиях, в первую очередь нужен талантливый тренер. Если вам не повезло с таким в школе, не отчаивайтесь: сильных преподавателей легко найти на специализированных курсах. Например, учитель информатики Владимир Ильин из «Клуба программистов» подготовил не одного призёра и победителя всероссийских олимпиад. А ещё разработал авторский курс «Алгоритмы. Олимпиадное программирование», на котором учат не просто составлять конкретные алгоритмы, но и понимать, как они работают в целом.
2. Соревноваться с крутыми программистами
Одно дело — решать олимпиадные задачи дома, в спокойной обстановке с печеньками и кока-колой. Совсем другое — на реальной олимпиаде: соревновательная обстановка, пристальное наблюдение и сосед, который, кажется, уже всё решил. Чтобы привыкнуть к ритму олимпиад, можно тренироваться на платформе CodeForces. Это международная площадка, где проводятся соревнования по программированию и «Раунды» — мини-олимпиады. По итогам каждого раунда у пользователей меняется рейтинг. Отличный шанс помериться силами с лучшими спортивными программистами мира, такими как Геннадий Короткевич или Пётр Митричев.
3. Учиться на наглядных примерах
Олимпиадное программирование — это всегда сложные алгоритмы. Зубрить их бесполезно, всё равно для каждой задачи придётся настраивать алгоритмы по-своему. Часто нужно рисовать схемы и иллюстрации, чтобы разобраться в сложной логической цепочке команд. К счастью, программисты — творческие люди (это правда!), и постоянно ломают голову над тем, как сделать круто, и тащат алгоритмы в мир привычных вещей. Когда абстрактный принцип появляется в реальности, он тут же становится понятным. Если погуглить, можно найти много таких примеров. Возьмём хотя бы Гарвард, где на первой лекции курса «Computer Science 50»преподаватель объясняет метод деления отрезка пополам с помощью телефонного справочника:
Как устроен ЕГЭ по информатике
Надеяться только на ЕГЭ — вариант для тех, кто определился с вузом только в 10-11 классе. Согласитесь, для старшеклассника начать готовиться к олимпиадам с нуля и успешно на них выступить — практически невыполнимая задача. Проходные баллы в хорошие вузы начинаются от 270 и выше, так что стоит поставить себе планку как минимум в 90 баллов.
В госэкзамене по информатике две части. В первой 23 задания, в каждом из которых нужен короткий ответ. Во второй — четыре задачи посложнее, которые требуют подробного решения. Жаль только школьники вынуждены писать программы на листочках вместо привычной клавиатуры. Но есть и плюсы — все задания стандартны и более-менее понятны. А вероятность, что на экзамене попадётся что-то похожее, очень велика.
Чтобы подготовиться, придётся терпеливо прорешивать сотни похожих друг на друга вариантов. Чаще всего это делают на уроках в школе или с репетитором. Но ограничиваться только этим слишком скучно.
Как лучше готовиться
1. Скупить кучу книг с тестами по информатике
Как бы это скучно ни звучало, нужно набрать как можно больше книжек с типовыми экзаменационными заданиями. Увы, вы никогда не будете уверены в том, содержит ли конкретное издание то, что ожидается на самом ЕГЭ — поэтому нужно пробовать разные варианты. Полки книжных магазинов забиты «тренажёрами» ЕГЭ круглый год, но лучше выбирать пособия именно для вашего года поступления. А ещё можно (и нужно!) изучить задачи с экзамена прошлого года. Сначала лучше прорешивать всё в спокойном темпе, чтобы понять, какие темы вам даются легко, а с какими придётся повозиться.
2. Устроить с друзьями баттл (или марафон)
Когда кажется, что не осталось темы, которая может ввести в ступор, зовите друзей и устраивайте баттлы на скорость решения или на количество набранных баллов. Выберите в качестве награды что-нибудь приятное (и не связанное с ЕГЭ) — билет в кино, на концерт любимой группы или в парк развлечений, сертификат в классный магазин и так далее. Ещё один вид нескучной подготовки — марафон из тематических фильмов и сериалов про программистов (например, «Теория большого взрыва» или «Кремниевая долина»). Решаете вариант ЕГЭ — и в качестве отдыха смотрите серию. А потом вновь возвращаетесь к подготовке.
3. Записаться на курсы, где к экзамену готовит опытный тьютор
Готовиться с друзьями — хороший подход. Но как быть, если среди друзей больше никто не собирается сдавать ЕГЭ по информатике? Найти единомышленников можно на курсах подготовки к ЕГЭ, например, в «1С: Клуб программистов». Здесь дети занимаются в небольших группах, узнают обо всех нюансах экзамена и все вместе их обсуждают. Преподаватели помогают вспомнить темы школьной программы, которые уже забылись, разбирают свежие демо-варианты от ФИПИ и отвечают на вопросы каждого ребёнка. И обстановка, надо сказать, не такая стрессовая, как на школьных уроках.
Текст: Сергей Щербина
Я бы посоветовал CodinGame https://my-gamezone.ru/igry-dlja-programmistov/codingame-igrat-onlajn/
http://www.rosolymp.ru/