Learn everything you need to for the first round at our workshops in EPF Lausanne, Uni Bern and ETH Zürich.
Register now! (The registration link is at the bottom of this page, but please take your time to read through it first.)
We invite you to two of our five workshop-weekends. They serve as an opportunity to get started with algorithms and competitive programming. No prior knowledge is required, though being good at maths and having some experience with programming can be an advantage.
Since there is a lot of material to cover, we split the workshops up into two parts.
- Part One: competitive programming in C++. We start with the very basics of C++ and move on to some more advanced language features. A lot of time is allocated for training on tasks that are of similar difficulty as the first two tasks of the first round. With some tricks and the help of the C++17 standard library you will be able solve those kinds of tasks in very little time.
- Part Two: running time analysis, graph algorithms and dynamic programming. This time we cover more theoretical topics and show how they can be applied to solve tasks. At SOI the main focus lies in algorithmic thinking rather than coding and this second part is very similar to our training camps. With this you have all the tools required to tackle the first round.
There are two parts and we strongly recommend you to go to both.
Part One (Saturday, Sunday):
- October 12–13: ETH Zurich (held in German)
- October 19–20: EPF Lausanne (held in French)
- October 26–27: Uni Bern (held in English)
Part Two (Friday, Saturday, Sunday):
- November 1–3: ETH Zurich (held in German)
- November 8–10: EPF Lausanne (held in English)
During all of these weekends, you can talk to us in German, French or English. The tasks will be available in all three languages. Even if you are not so fluent in, say, French and attend a French workshop, you probably will be able to follow most of it just fine.
- meet like-minded people from all over Switzerland,
- learn those topics from experts and let them help you debug your code and
- enjoy a friendly but competitive atmosphere.
Besides the lectures and tons of time for coding and solving problems, we will also have some quizzes and card games prepared for the evenings. Some rumors have it there will also be a scavenger hunt across the city in one of the workshops.
As said, we do not expect any prior knowledge from you. But you will profit the most if you have learned the basics in some programming language before. We teach C++ even though C++ is not the easiest language to start with.
If you are completely new and want to get started as fast as possible, we recommend that you refer to the training page.