This page is intentionally written in English only! That’s part of your training for the admission :-)

This year there will be room for up to 20 students of different ages at each of the 8 sites that joined the CyberChallenge.IT program: perhaps you’ll be one of them!

To be admitted, you’ll have to engage first in an online pretest and then in a physical test. Here’s info about what to do to prepare for both.

Online pretest

The online pretest will be announced by email to everyone who signed up for the challenge and will remain online from Jan 25 through Jan 27, 2018. The pretest is in English and has the following structure:

  • Quizzes
    • logic reasoning
    • C programming

Admission test

The admission test will be held on February 1, 2018 at each site and is reserved for the participants who did a good job at the pretest. For information about hours/logistics, please refer to the local sites section.

The test has two phases, both held in the same day. Phase 1 (morning) is open to everyone who registered for the challenge and passed the pretest. Phase 2 (afternoon) is reserved for the participants who did the best job in Phase 1. The short list of participants admitted to Phase 2 will be announced in the early afternoon.

The test is in English and has the following structure:

  • Phase 1 - Quizzes (60 mins)
    • logic reasoning
    • C programming
  • Phase 2 - Programming (3 hours)
    • problem solving exercises in any of the following languages: C, C++, Python, Java (a more detailed list will be published on the local sites section)
    • programming exercises in C


  • Quizzes focus on your reasoning and programming skills.
  • Problem solving exercises focus on your ability to solve computing problems by designing effective algorithms, independently of the specific programming language used to implement them.
  • Programming exercises focus on your ability to master programming languages to solve a variety of problems.

Admission criteria

Quizzes (Pretest + Phase 1) and programming exercises (Phase 2) will be evaluated mainly for correctness. As secondary evaluation criterias for programming exercises in case of ties, we’ll also consider performance and elegance.


To succeed in the admission test and make CyberChallenge.IT a fruitful experience, you should be:

  • fluent in the C programming language
  • able to solve logic reasoning quizzes

IA32, Python, and Java are a big plus (if you aren’t familiar with them, you’ll have to learn them anyway during the training sessions of the challenge…). Some of them may come in handy for problem solving exercises: for instance, some problems may be easier to solve in Python than in C, but the choice is entirely up to you.

Test if you’re ready for the challenge by trying out the exercises below!

Training for Pretest/Phase 1 (quizzes)

Category Exercises
Logic reasoning Training examples
C programming Training examples

Training for Phase 2 (programming)

Category Exercises
Problem solving Training examples
C programming Training examples

Example of admission test


The Olympiads in Informatics are a great source of problem solving exercises and programming tranining material, see, e.g., the training material of the Italian Chapter.

Change log

  • 180108: merged admission and training pages
  • 171224: added solutions to training exercises for C programming and problem solving