Training School Children for Competitive Programming

From ICPC
Jump to: navigation, search

Training School Children for Competitive Programming

Denis Vlasov
Vladimir Kuznetsov

Petrozavodsk State University, Petrozavodsk, Russia

Presentation

It is well known that to achieve good results in programming competitions contestants should start learning Computer Science as early as possible. The best way is to gather talented school children and show them interesting things in this area that may spark deep interest in solving problems.

Until 1998 there was no any regular educational work with pupils in Petrozavodsk. For this reason the results at most competitions were quite weak. Due to the development of ACM-ICPC Community in Russia and increasing of number of national contests the idea has appeared to organize such a school community and start the process of teaching.

At first, senior high school students started visiting student trainings at the University. Later, Dr. Vladimir Kuznetsov began to conduct special classes and seminars. There he talked about efficient algorithms, data structures, complexity of algorithms, some mathematical aspects. Children were inspired to devote themselves to Computer Science and Informatics.

Having good experience with organizing student summer programming camps it was decided to transfer this idea to training pupils. The first out-of-town camp for talented children was held in 2002 and since then it had become annual. Every summer about 25 kids are gathered together to study Computer Science, Maths and solve various problems. During 10 days they take part in many personal contests, attend many lectures and learn a lot of new things.

Now, we have several age groups of school children from the beginners to those who have great experience in competing at the National Olympiads and student contests. Every year we invite everyone willing to study Computer Science and solve Programming problems. Usually there are more than hundred such pupils at the initial lesson, gradually decreasing during first months. Eventually, only those who want to work hard stay and keep studying.

Obviously, practice lessons require using a universal automated judge system working 24/7 and allowing not only holding contests but also providing large educational problem sets. Such a web-based solution named “FSystem” was created in 2007 to replace the previous one with lower functionality. Currently, it contains more than 1400 problems including ones from all the local and regional competitions.

These efforts helped us to improve the process of teaching school children all the things they must know to successfully participate in different competitions. Furthermore, many of pupils enter our University and show good knowledge compared with other students who didn’t learn advanced skills. No one could imagine 10 years ago that local kids would become strong enough to win medal places at the National and International contests competing with the best participants from all over the world.