Как готовиться к олимпиадам по информатике.


Михаил Густокашин, гимназия №6 г. Тольятти.

Я участвую в олимпиадах по информатике 3 года (с 8 класса). Большого успеха я добился только будучи десятиклассником. С чем же это связано? В этом обзоре я постараюсь разобрать причины своих успехов и неудач и сделать некоторые общие выводы.

В первую очередь хотел бы выразить ОГРОМНУЮ благодарность моим учителям: Ирине Сергеевне и Михаилу Юрьевичу Надточий. В обзоре будет рассмотрен их педагогический опыт с позиции ученика и мой личный, с позиции учителя.

Информатика - еще молодая наука. Если в олимпиадах по математике и физике уже давно сложилась система и задания на протяжении десятков лет сохранялись на одном уровне, то в информатике царит легкий хаос. С каждым годом задания становятся сложнее, подготовка участников выше, но по моим личным заметкам отношение набравших баллы к не набравшим падает. Возможно это объясняется повышением уровня сложности задач, возможно тем, что все больший интерес у школьников вызывают мультимедийные технологии, но как бы то ни было можно сделать вывод, что формируется некоторая программистская элита, в которой остаются только самые лучшие (в области решения олимпиадных задач).

Как же готовиться к все время усложняющимся олимпиадам?
Я считаю наиболее правильной систему моих преподавателей (хотя я ее немного изменил). На факультативном занятии (научить решать олимпиадные задачи можно только на факультативе, где занимается не более 6-7 человек, иначе - бардак) преподаватель кратко объясняет теорию. Затем предлагает задачи по только что объясненной теме не объясняя (но отлично зная!) решения ни одной из них. Ученики предлагают свои идеи по поводу решения, т.е. занятие проходит в форме семинара под руководством преподавателя. В случае затруднения преподаватель может помочь ученикам, предложив некоторую идею. Затем, в случае если есть возможность написать программу за достаточно короткое время, программа реализуется на компьютере. Однако здесь есть свои трудности: в случае разного уровня подготовки учащихся, время, затрачиваемое на написание программы, сильно различается, что приводит к тому, что уже решившие задачу сидят и скучают (при этом постепенно теряют интерес к занятиям), а те, кто еще пишет нервничают, смотрят на тех кто скучает, завидуют и также теряют интерес к занятиям. Здесь надо найти золотую середину. Время от времени следует организовывать мини или полномасштабные олимпиады по информатике, с задачами уровня не ниже областной городской, но со сниженными требованиями к участникам (разрешается ходить по кабинеты, иногда общаться, пить чай и т.п.). Важной частью подготовки является разбор нерешенных задач с олимпиады (такие чаще всего остаются, особенно после олимпиад достаточно высокого уровня). Здесь учитель часто находится в равных условиях с учеником, так как и он сам не знает решения такой задачи. Домашнее задание следует давать в разумных количествах (лучше больше) и по теме или, при подготовке к олимпиаде (обычно за 2 недели) задачи с прошлых олимпиад. Те кто не сильно хочет заниматься информатикой задание все равно не сделают, а те, кто хочет - сделают все. Для любимого предмета каждый человек может найти время.
Чтобы научиться решать задачи необходимо выполнить 7 пунктов:
1) Знать математику. Очень часто встречаются математические задачи.
2) Уметь общаться. В ходе обсуждения рождается множество новых идей.
3) Иметь способности. Я так и не научился играть на пианино :)
4) Осознавать, что тебе это нужно. На самом деле олимпиадные задачи - всего лишь "массаж для мозгов", но если бы их не было, вы бы умели писать программы так хорошо?
5) Сильно хотеть победить. Но не до умопомрачения.
6) Научить других решать задачи. Не обязательно. Но когда объясняешь другим, начинаешь лучше понимать сам.
7) (Самое главное) Быть хорошим человеком. Если вы плохой человек, то со всем вашим умение писать программы вы никому не нужны.

Чтобы научиться хорошо решать задачи необходимо кроме этого выполнить еще один пункт:
!) ПОСТОЯННЫЕ ТРЕНИРОВКИ. Каждая решенная задача должна доставлять вам удовольствие, и чем дольше вы над ней сидели тем больше радости от успешного ее решения (главное не перегибать палку - после 10 бессонных ночей над задачей ее решение вряд ли доставит вам радость).
Хорошо потренироваться можно на задачах из сборников с он-лайн проверкой, например на acm.timus.ru - сервере УрГУ или на acm.uva.es - это сборники acm задач, школьникам я советую dl.gsu.unibel.by - Distance Learning Belarus. Там хоть задачки на русском.
Еще можно просто взять условия задач с тестами. Это можно сделать на многих сайтах, в том числе и на g6prog.narod.ru, informatics.ru, uoi.kiev.ua, www.olymp.vinnica.ua, а также на вышеприведенных сборниках. Это только малая их часть, но, пожалуй, это самые знаменитые.
Удачи вам!

27.03.02
Михаил Густокашин
msg_tlt@freemail.ru
g6prog.narod.ru

Наверх