Subiectele neoficiale, dar necesare
Programa olimpiadei de informatică
pentru performanță națională.
Subiectele din programa olimpiadei de informatică sunt propuse în baza experienței de predare acumulată. Profesorii care predau astăzi la Nerdvana au redactat-o, după 20 de ani de predare la ciclul gimanzial și liceal.
Așadar, aceasta nu este o listă de subiecte oficială, pe care organizatorii concursurilor au oferit-o. Este, de fapt, o listă creată pe baza problemelor propuse la aceste concursuri. Ordinea subiectelor pe care o sugerăm a fost introdusă pentru a oferi elevilor un parcurs cât mai logic și eficient.
Lista de probleme oferită la fiecare clasă este compusă din problemele pe care noi le lucrăm cu elevii noștri. De aceea, există șansa să nu le regăsiți pe toate cele date în olimpiadele de până acum. Vom actualiza lista pe măsură ce vom analiza și rezolva alte probleme.
Totodată, pentru a păstra lista cât mai simplă, problemele apar doar la capitolul cel mai reprezentativ. Înseamnă că, cel mai probabil, rezolvarea uneia necesită cunoștințele din toate subiectele enunțate anterior.
Programa olimpiadei la informatică pentru gimnaziu
Programa olimpiadei la informatică pentru liceu
Primele concepte din programa olimpiadei de informatică
Clasa a 5-a
- împărțirea cu rest;
- divizori;
- cel mai mare divizor comun (CMMDC);
- ridicarea la putere;
- radical;
- numere prime;
- numere prime între ele;
- factorial;
- Fibonacci.
- despre algoritmi;
- variabile;
- operatori;
- structura liniară;
- structura alternativă;
- structura repetitivă de tip WHILE-DO;
- exerciții cu concepte elementare de calcul: maxim, divizibilitate, paritate, radical.
- citire;
- scriere;
- atribuire;
- comenzile IF și WHILE.
- extragerea cifrelor unui număr;
- compunerea unui număr cu cifrele sale;
- inversarea unui număr.
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Aproape toate problemele de la clasa a cincea vor avea variabile cu unul dintre aceste roluri.
Probleme date la concursuri:
Ne referim la prelucrarea secvențelor la momentul citirii, fără vreun fel de stocare.
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
- 2048 (ONI 2014)
- Case1 (ONI 2009)
- Cat (Campion 2005)
- Cifra2 (Olimpiada locală 2012)
- Cub1 (ONI 2002)
- Degrade (Campion 2008)
- Felinare (ONI 2008)
- Felinare1 (Olimpiada locală 2012)
- Maxim1 (ONI 2007)
- Numere11 (ONI 2019)
- Orintia (ONI 2003)
- Păpușa (ONI 2011)
- Ruleta (Campion 2008)
- Strand (Concursul Grigore Moisil 2011)
- Tramvai (Campion 2005)
- Trio (ONI 2019)
- Zuma (Campion 2011)
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Subiecte propuse
Probleme studiate
Minim ore de lucru
Aplicabilitate și concepte intermediare din programa olimpiadei la informatică
Clasa a 6-a
- Constante C;
- Instrucțiunea SWITCH;
- Divizibilitate;
- Algoritmul lui Euclid;
- Ciurul lui Eratostene;
- Interclasare;
- Sortare prin selecție;
- Căutare binară;
Probleme date la concursuri:
- Loc (Campion 2005)
- Suma (Campion 2006)
- Paisprezece (Campion 2011)
- Comanda (Concursul Grigore Moisil 2006)
- Cyber (Concursul Grigore Moisil 2006)
- Petale (Concursul Grigore Moisil 2011)
- Danut (Concursul Grigore Moisil 2012)
- Rubine (Cupa Mărțișor 2013)
- Covor (OJI 2015)
- Ordine (OJI 2015)
- Accesibil (OJI 2017)
- Prieteni1 (Olimpiada locală 2013)
- Miny (Olimpiada locală 2014)
- Nenepătrat (Olimpiada locală 2014)
- Agent (Olimpiada locală 2015)
- Cale ferată (Olimpiada locală 2015)
- Divprimi (Olimpiada locală 2017)
- Bravo ai șir (Olimpiada locală 2019)
- N sau 0 (Olimpiada locală 2019)
- Debarcare (ONI 2003)
- Număr 1 (ONI 2003)
- Reorganizare (ONI 2003)
- Sport1 (ONI 2003)
- Alarma (ONI 2009)
- Numere24 (OJI 2018)
- Nr (ONI 2009)
- Cartier (ONI 2012)
- Număr (ONI 2012)
- Divizori (ONI 2013)
- Prâslea (ONI 2014)
- Lightbot (ONI 2015)
- Descmult (ONI 2018)
- Logaritm (minim logaritm în baza doi);
- Baze de numerație ;
- Analiza complexității algoritmilor ca timp și memorie ocupată;
- Notația O mare (big O);
- Studiul complexității în problemele rezolvate la lecții și la teme.
Problema este cunoscută şi sub numele de ridicare la putere în timp logaritmic. Scopul este de a ridica un număr la o putere cu un număr cât mai mic de înmulțiri.
Probleme date la concursuri:
- Secvență crescătoare prin rotație;
- Interpretrarea corectă a unei secvențe de paranteze;
- Multiplicitatea unui număr în n! (formula lui Legendre).
- Unități de măsură a memoriei calculatorului
- Tipul char
- Tipul unsigned char
- Tipul short
- Tipul unsigned short
- Tipul int
- Tipul unsigned int
- Tipurile long și unsigned long
- Tipul long long
- Tipul unsigned long long
- Tipul float
- Tipul double
- Conversie de întregi de la mic la mare;
- Conversie de întregi de la mare la mic;
- Conversie de la întreg la double;
- Conversie de la double la întreg;
- Tipul unei expresii;
- Depășiri ale tipului de date.
- Sistemul pozițional zecimal;
- Sistemul pozițional binar;
- Conversia de la baza 10 la baza 2;
- Conversia de la baza 2 la baza 10;
- Analogia bazelor;
- Baza 16;
- Conversia de la baza 2 la baza 16;
- Conversia de la baza 16 la baza 2;
- Constante hexazecimale în C;
- Alte baze de numerație.
Probleme date la concursuri:
- Reprezentare și afișare
- Adunarea unui număr mic la unul mare
- Scăderea unui număr mic din unul mare
- Adunarea a două numere mari
- Scăderea a două numere mari
- Înmulțirea unui număr mare cu unul mic
- Împărțirea unui număr mare la unul mic
Probleme date la concursuri:
- Citire și afișare;
- Parcurgeri pe linii, coloane și diagonale;
- Alte parcurgeri;
- Transpunere;
- Căutarea unui element într-o matrice;
- Căutarea unui vector într-o matrice;
- Căutarea submatrice într-o matrice.
Probleme date la concursuri:
- Vectori de direcție: vectori preinițializați în care stocîm cele patru sau opt direcții de deplasare în matrice. Scopul este de a simplifica și scurta programele;
- Bordare: adăugarea unei "borduri" extra unei matrice, bordură ce conține valori speciale. Scopul este de a simplifica testul de ieșire din matrice.
Probleme date la concursuri:
Probleme ce tratează simularea unui sistem din lumea reală.
- Starea sistemului simulat;
- Tactul sistemului (ceasul, pulsul sau bătaia);
- Bucla de simulare.
Probleme date la concursuri:
- Bile2 (Campion 2005)
- Albine (Campion 2011)
- Atlantis (Infotehnium 2019)
- Chip si Dale (Olimpiada locală 2013)
- Magician (Olimpiada locală 2017)
- Ruleta1 (OJI 2009)
- Fermier1 (OJI 2017)
- Șoricel (OJI 2017)
- Turnuri (OJI 2018)
- Album (OJI 2019)
- Maxim2 (OJI 2019)
- Cutii1 (ONI 2003)
- Roboți (ONI 2006)
- Cifru1 (ONI 2007)
- Minute1 (ONI 2007)
- Turn (ONI 2007)
- Melci (ONI 2008)
- Tetris (ONI 2009)
- Joc3 (ONI 2011)
- Talent (ONI 2011)
- XY (ONI 2011)
- Remi (ONI 2013)
- Roboțel (ONI 2016)
- Faleza (ONI 2017)
- Pește (ONI 2017)
- Gazon (ONI 2018)
- Maya (ONI 2019)
Metoda de a scădea complexitatea unui algoritm folosind o tabelă de stocare a datelor deja calculate, pentru a evita recalcularea lor.
Probleme date la concursuri:
Subiecte propuse
Probleme studiate
Minim ore de lucru
Concepte avansate, strâns legate între ele, din programa olimpiadei la informatică
Clasele a 7-a și a 8-a
Subiectele dintre cele două clase se întrepătrund și este foarte dificil de făcut o diferență și unde ar trebui să facem împărțirea. Vom trata cele două clase în același capitol.
- Combinări;
- Permutări.
Probleme date la concursuri:
- Piramida (Olimpiada locală 2013)
- Taxe (ONI 2009)
- Albine (Campion 2011)
- Magic (Infotehnium 2013)
- Popas (OJI 2004)
- Pluton (OJI 2006)
- Grad (OJI 2009)
- Star Trek (OJI 2009)
- Comp (OJI 2011)
- Schi (OJI 2014)
- TCif (OJI 2014)
- Ech (OJI 2015)
- Pavare (OJI 2015)
- Joc10 (OJI 2017)
- Leduri1 (OJI 2017)
- Lasere (OJI 2015)
- Valutar (OJI 2019)
- Foto1 (OJI 2020)
- Bile (Olimpiada locală 2012)
- Joc (Olimpiada locală 2012)
- Fermier (Olimpiada locală 2013)
- Numere2 (Olimpiada locală 2013)
- Dist max (Olimpiada locală 2014)
- Punga (Olimpiada locală 2016)
- Portocal (ONI 2003)
- Sume1 (ONI 2004)
- Zar (ONI 2004)
- Adun (ONI 2006)
- Joc7 (ONI 2008)
- Tir (ONI 2009)
- Dartz (ONI 2010)
- Maraton (ONI 2010)
- Neuroni (ONI 2010)
- Butoane (ONI 2011)
- Alune (ONI 2012)
- Proiecte (ONI 2012)
- Eoliene (ONI 2013)
- Calculator (Shumen 2011 Junior)
- Sequences (Shumen 2014 Junior)
- AB (Shumen 2104 Junior)
- Indirectare;
- Problema selecției;
- Problema numărării în cerc;
- Tip de date abstract (TDA);
- Arbori de joc și algoritmul minimax.
- Interclasarea vectorilor ordonați
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
- Precalculare tip caracter;
- Precalculare valori cifre în baze de numerație;
- Ciurul lui Eratostene;
- Sume de intervale.
Probleme date la concursuri:
- Recursie Top-Down;
- Recursie Bottom-Up cu acumulator;
- Transformarea recursiei din Top-Down în Bottom-Up.
Probleme date la concursuri:
Probleme date la concursuri:
Calculul costului amortizat pentru operații scumpe.
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Probleme date la concursuri:
Algoritm de rezolvarea a problemelor cu mulțimi disjuncte. Ne referim la operațiile de unire a mulțimilor și de căutare al unui element într-o mulțime.
Probleme date la concursuri:
- Algoritmul Mergesort;
- Algoritmul Quicksort;
Probleme date la concursuri:
Diferențe între comenzile de citire și scriere. Metode de îmbunătățire a timpului de citire și scriere.
Probleme date la concursuri:
Probleme care se bazează pe concepte de matematică, geometrie sau trigonometrie.
Probleme date la concursuri:
- Metoda greedy;
- Subsecvența crescătoare de lungime maximă;
- Subșirul de sumă maximală;
- Subsecvența comună maximală a două șiruri;
- Distanța edit (Levenshtein);
- Numărare optime prin programare dinamică.
Probleme date la concursuri:
- Tren (Campion 2004)
- Sir1 (Cupa Mărțișor 2013)
- Lăcusta (OJI 2005)
- Cub (Olimpiada locală 2012)
- Șiruri 2 (OMI 2010)
- Meteor (ONI 2004)
- Neo (ONI 2004)
- Rafturi (ONI 2009)
- Char (ONI 2010)
- Flori2 (ONI 2010)
- Raze (ONI 2010)
- Simetric (ONI 2010)
- Joc6 (ONI 2011)
- Poteci (ONI 2011)
- Optim (ONI 2012)
- Zmax (ONI 2013)
- Placa (ONI 2014)
- Faleza (ONI 2017)
- Points2 (Shumen 2010 Junior)
- Balance (Shumen 2012 Juniori)
Subiecte propuse
Probleme studiate
Minim ore de lucru
Concepte intermediare din programa olimpiadei la informatică
Clasele a 9-a
Programa este în lucru. Aceasta este lista subiectelor abordate la cursurile IQ Academy, la clasa a 9-a, în anul școlar 2020-2021. Aceste subiecte vor face tema testului de selecție pentru cercul IQ Academy adresat clasei a 10-a în anul școlar 2021-2022.
- Complexități de timp și spațiu;
- Memoria pe stivă și memoria globală;
- Convertire tipuri de date;
- Suma și numărul divizorilor;
- Descompunere în factori primi;
- Algoritmul lui Euclid;
- Ciurul lui Eratostene.
- Problema elementului majoritar;
- Hashing.
- Operații pe biți;
- Submulțimile unei mulțimi;
- Căutare binară;
- Exponențiere rapidă;
- Invers modular.
- Divide et impera;
- Mergesort;
- Quicksort;
- Statistici de ordine.
- Listă;
- Stivă;
- Coadă;
- Coadă cu două capete (deque);
- Implementări folosind struct.
- Bucketsort;
- Radixsort.
- Flood Fill (DFS);
- Algoritmul lui Lee (BFS).
- Combinări;
- Permutări;
- Generare divizori prin backtracking.
- Problema rucsacului fracționar;
- Problema spectacolelor.
- Subsecvență de sumă maximă;
- Subșir crescător maximal;
- Subsecvență comună maximală;
- Subșir comun maximal;
- Sume parțiale;
- “Șmenul lui Mars” (Difference Arrays) 1D & 2D;
- Problema rucsacului discret.
- Probleme de precizie;
- Căutare binară pe numere reale.
Subiecte propuse
Minim ore de lucru
Dacă îți dorești să înveți alături de profesorii care au conceput programa olimpiadei de informatică, verifică programul cursurilor de informatică Nerdvana și începe să te pregătești!