As I remember I started programming when I was 9 years old in my third year at school. My first programming language was Basic. One day I found an old book describing the principles of solving differential equations. I didn’t understand them at all but the examples were given in Basic and I began learning the language.
When I had grasped the fundamentals, I started coding. First I wrote programs just for mastering the language and then went on with the ones closer to real life problems. During the first year of my self-education I tried to write small games – mathematical and arcades mainly. Later I wrote editors, image viewers, and code-helping utilities. (My own 3-D shooter game I left unfinished.)
I participated in my very first programming contest in the sixth form. It was the Saint-Petersburg School Olympiad where I got the last but one of the third category certificates for solving several problems. By that time I had been already attending a special programming group for kids. At such circles children had an opportunity to study Logo, Pascal, C, Basic and learn how to solve algorithm problems. Thus by the time when I started taking part in real programming contests, I’d already had some programming skill.
Did you like solving algorithm problems? Did you practice a lot?
Yes. They seemed rather interesting. But I was not seriously focusing at them after my first official contest. I was writing non-algo problems for my own purposes. I studied C++.
After the next contest — the City School Olympiad again — I started to train seriously.
I used Pascal for solving contest problems. It was very popular among us. I could write in C or C++ but didn’t know them that well at the time.
Tell us a little about your contest-solver career start.
Since the 7th form I had been taking part in ACM-type school contests. In the 9th form, thanks to Andrew Lopatin (KOTEHOK) we were invited to the Winter Petrozavodsk Training Camp. This was the place where the “Burunduchki” team came into existence (note: “Burunduchki” means “Chipmunks” in English). Since that year we have tried not to miss a single contest.
How was the “Burunduchki” team built? And why “Burunduchki”?
I met Sergey Kopeliovich, one of the future “Burunduchki” team members, after I had changed my previous school for Saint-Petersburg Physics & Math Lyceum #30. We both started preparing for the next All-City school contest at the IFMO Training Center (note: IFMO is Saint-Petersburg State Institute of Fine Mechanics and Optics).
We picked up our third member, Oleg Davidov (Burunduk3), after the All-Russia Olympiad in Novosibirsk in 2005. The Summer Petrozavodsk Training Camp was the first event in which all three of us took part.
How did you get involved in TopCoder?
Our coaches and teachers had been keen on TopCoder contests for a sufficiently long time before we came here. Everyone knew about Petr Mitrichev and his success. We were told about TopCoder and everything seemed very tempting. We saw how Andrew Lopatin (KOTEHOK) and Andrew Stankevich (andrewzta) were solving SRMs. They shared their impressions and discussed it.
It was in February 2006 when we decided to solve TopCoder contests ourselves. We didn’t compete right after registration and started only in March. We kept our “Burunduchki” nicknames for TC as well. So now I’m known as Burunduk2.
What do you like the most about Single Round Match rules?
First, the duration of contest is less than an ACM or IOI event. I like blitz-style contests most. Second, it is unusual that the points gained for solution depend on the time. The participants actually have only one submit per problem. Also I like to view solutions of my rivals.
But, in fact, I do not use Challenge Phase opportunities very often. This is probably because my challenging skills are not very good. I’m going to improve it. I see that it can be very useful.
Moreover I like that people from the whole world come to compete. International contests are always wonderful.
Have you ever tried any other type of competitions at TopCoder in addition to Algorithm?
I didn’t try development and design but did participate in Marathon Match. I should admit that the marathon format is too long for me and I don’t have enough patience for it. But I hope I’ll try it again soon.
What kind of problems do you like to write or solve most of all?
Oh, it depends. The main thing is to develop a “beautiful” solution.
I like problems that require data type manipulations. But unfortunately they are not frequently found at TopCoder.
Actually the type of a problem doesn’t matter. I tend getting pleasure from each contest.
What do you consider the main incentive for competing in algorithm contests?
First I must admit that they are interesting and amazing. They have given me an opportunity to travel around the world. I have already visited many Russian cities – from Novosibirsk to Petrozavodsk. TopCoder gave me an opportunity to see America.
And this is good training for the brain.
Does practicing take a lot of time? Don’t you have any problems at school because of it?
Usually teachers are understanding, but sometimes I forget to provide explanatory letters about why I miss so many classes . Teachers don’t like this but they do forgive me.
Are you planning to continue programming in the future?
Yes. There are a lot of job opportunities in this field.
Have you already chosen a university?
I think my choice is the Saint-Petersburg State University. All the “Burunduchkis” are going there, so we are looking forward to the ACM ICPC World Finals as a team .
What are your other interests?
I like read fantasy and philosophy books. I like listening to music. I prefer rock and metal, and I even try to play the guitar sometimes.
Tell us about your impressions of the TCHS tournament.
They are very positive! I enjoyed meeting people who share my interests. We were talking a lot. It was a very useful experience. The organizational side was perfect. But it is a pity that not everyone had settled their financial affairs. Since the travel arrangements to Indianapolis, Indiana, USA were the responsibility of each competitor some advancers could not come. Fortunately our delegation had no problems thanks to Andrew Lopatin, our coach, who also accompanied us during all trip.
I’d like to thank the problem writers for short and clear statements. And special thanks for the dynamic programming problems. They don’t come easy to many people and I can say I like them.
As for the contest itself I should say that the Coding Phase was very exciting. I successfully did the Easy but bugged in the Medium. Later I resubmitted it for fewer points. At that moment all my hopes were for the Hard. I submitted my first solution for about 900 points (just for high points, hoping for the best and without any checking). After some fixes I resubmitted the Hard. I thought I’d take one of the last places. During the Challenge Phase I realized that AnonnymousT’s solution would fail. My own challenge hunting appeared to be unprofitable.
Among the informal events I remembered a cool fountain. I even freshened up in it a little!
What did you feel when realized that you are a winner?
At last! Actually I don’t like coming in second, even when you are after a fairly strong TopCoder
How are you going to use your prize?
First of all I’m going to get it. It seems it will not be so easy and fast. I hope to get a free higher education, thus I’m open for a lot of ideas. I’m not sure, maybe a car…
What do you think is the main key for success?
Having a good teacher.
Can you give a piece of advice on how to succeed in a contest?
Fight with the problems, not with people!