Nivel 2 (mediu)

Nivelul 2 este cel în care se face trecerea către performanță.

Odată ce avem noțiuni solide în urma travesării nivelului 1, parcurgem acum algoritmi și tehnici de programare de bază precum: recursivitate, divide et impera, programare dinamică, backtracking, combinatorică, geometrie, stive, cozi, hashuri etc.

Un principiu esențial în organizarea materiei a fost revenirea la un capitol din care s-au studiat deja elemente la un nivel anterior. De exemplu găsim elemente de geometrie sau combinatorică atât la nivelul mediu cât și la cel avansat.

Acest nivel ar trebui parcurs de către elevii de clasa a 10, dar și de către cei de clase mai mici care sunt deja în al treilea an de studiu în algoritmică (aceste recomandări sunt destul de relative totuși, pot apărea diferențe date de implicare, talent, ambiție, adică este puternic recomandat ca un elev să parcurgă mai repede aceste lucruri, cum și invers, chiar dacă s-au depășit termenele propuse de noi aici, dacă există dorință, mobilizare și putință, lucrurile se pot recupera).