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.

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.

Primele concepte din programa olimpiadei de informatică

Clasa a 5-a

1Concepte matematice
  • împărțirea cu rest;
  • divizori;
  • cel mai mare divizor comun (CMMDC);
  • ridicarea la putere;
  • radical;
  • numere prime;
  • numere prime între ele;
  • factorial;
  • Fibonacci.
2Introducere în algoritmi
  • 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.
3Introducere în limbajul C / C++
  • citire;
  • scriere;
  • atribuire;
  • comenzile IF și WHILE.
5Verificare număr palindrom

Probleme date la concursuri:

  1. Palindrom2 (OJI 2016)
6Determinare divizori și verificare număr prim
7Interschimbarea a două variabile
8Algoritmul lui Euclid pentru găsirea CMMDC

Probleme date la concursuri:

  1. Cozonaci (Concursul Grigore Moisil 2011)
9Roluri ale variabilelor: acumulator, contor, steguleț

Aproape toate problemele de la clasa a cincea vor avea variabile cu unul dintre aceste roluri.

11Radical
12Secvențe (șir de numere)
13Incrementare, decrementare, comenzile FOR și DO-WHILE în limbajul C / C++
18Vectori circulari

Probleme date la concursuri:

  1. Culori1 (ONI 2012)
19Vectori preinițializați

Probleme date la concursuri:

  1. Goe (ONI 2011)
  2. Speciale (OJI 2015)
20Ciurul lui Eratostene
21Sortarea prin numărare (Counting Sort)

Probleme date la concursuri:

  1. Șiruri1 (OJI 2004)
22Sortarea prin selecție (Select Sort)

Probleme date la concursuri:

  1. Arme (OJI 2012)
  2. Cartonaș (ONI 2009)
23Lucrul cu unități de măsură ale timpului

Aplicabilitate și concepte intermediare din programa olimpiadei la informatică

Clasa a 6-a

2Alte comenzi în C / C++
  1. Definirea constantelor;
  2. Instrucțiunea SWITCH;

Probleme date la concursuri:

  1. Numere24 (OJI 2018)
3Algoritmi esențiali și concepte
  1. Secvență crescătoare prin rotație
  2. Exponențiere rapidă;
  3. Interpretrarea corectă a unei secvențe de paranteze;
  4. Element majoritar;
  5. Căutare binară.
4Tipuri de date în limbajul C / C++
  1. Unități de măsură a memoriei calculatorului
  2. Tipul char
  3. Tipul unsigned char
  4. Tipul short
  5. Tipul unsigned short
  6. Tipul int
  7. Tipul unsigned int
  8. Tipurile long și unsigned long
  9. Tipul long long
  10. Tipul unsigned long long
  11. Tipul float
  12. Tipul double
5Depășiri ale tipurilor de date și conversii ale acestora
  1. Conversie de întregi de la mic la mare
  2. Conversie de întregi de la mare la mic
  3. Conversie de la întreg la double
  4. Conversie de la double la întreg
  5. Tipul unei expresii
6Complexitatea algoritmilor

Un capitol foarte important întrucât problemele propuse necesită o analiză atentă înainte de implementare.

7Baze de numerație
  1. Sistemul pozițional zecimal;
  2. Sistemul pozițional binar;
  3. Conversia de la baza 10 la baza 2;
  4. Conversia de la baza 2 la baza 10;
  5. Analogia bazelor;
  6. Baza 16;
  7. Conversia de la baza 2 la baza 16;
  8. Conversia de la baza 16 la baza 2;
  9. Constante hexazecimale în C;
  10. Bază ascunsă

Probleme date la concursuri:

  1. Decbin (Campion 2005)
  2. Cepe (OJI 2005)
  3. Paritate (OJI 2007)
  4. Tablou (ONI 2008)
8Numere mari
  1. Reprezentare și afișare
  2. Adunarea unui număr mic la unul mare
  3. Scăderea unui număr mic din unul mare
  4. Adunarea a două numere mari
  5. Scăderea a două numere mari
  6. Înmulțirea unui număr mare cu unul mic
  7. Împărțirea unui număr mare la unul mic

Probleme date la concursuri:

  1. Cod (ONI 2016)
9Matrice (tablouri bidimensionale)
10Vectori de direcție și bordarea matricei

Probleme date la concursuri:

  1. Medalion (ONI 2012)
  2. Ținta (ONI 2014)
12Memoizare

Metoda de ieftinire a calculelor scumpe.

Probleme date la concursuri:

  1. Creioane (ONI 2008)
  2. Bila1 (ONI 2010)
13Multiplicitatea unui număr în n! (formula lui Legendre)

Probleme date la concursuri:

  1. Factk (Campion 2004)

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.

1Concepte matematice
  1. Combinări;
  2. Permutări.
3Alte comenzi în C / C++
  1. Predefinirea funcțiilor / subprogramelor;
4Algoritmi esențiali și concepte
  1. Indirectare;
  2. Problema selecției;
  3. Problema numărării în cerc;
  4. Tip de date abstract (TDA);
  5. Arbori de joc și algoritmul minimax.
  6. Interclasarea vectorilor ordonați

Probleme date la concursuri:

  1. Portofel (PACO 2013)
  2. Complot (Olimpiada locală 2015)
5Stive
8Recursivitate
  1. Recursie Top-Down;
  2. Recursie Bottom-Up cu acumulator;
  3. Transformarea recursiei din Top-Down în Bottom-Up.

Probleme date la concursuri:

  1. Optim (ONI 2012)
9Fill recursiv (flood fill)
10Analiză amortizată
12Coadă
14Cozi duble și maximul dintr-o fereastră glisantă

Probleme date la concursuri:

  1. Maxim (ONI 2007)
  2. Cuburi (ONI 2012)
15Algoritmul Union-Find

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:

  1. Exclusiv (OSEPI 2021, etapa județeană)
  2. Channels (Shumen 2012 Junior)
17Citire / scriere rapidă (parsing) și analiză sintactică

Diferențe între comenzile de citire și scriere. Metode de îmbunătățire a timpului de citire și scriere.

Probleme date la concursuri:

  1. Expr (OJI 2009)
  2. Agenda (ONI 2014)
  3. Nod (ONI 2014)
  4. Opmult (ONI 2014)
18Probleme de geometrie

Probleme care se bazează pe concepte de matematică, geometrie sau trigonometrie.

Probleme date la concursuri:

  1. Pătrate (Campion 2007)
  2. Puncte (OJI 2013)
  3. Zona (OJI 2013)
  4. Baloane (Olimpiada locală 2012)
  5. Cuburi3 (ONI 2005)
  6. Banda (ONI 2009)
  7. T Drept (ONI 2014)
19Programare dinamică
  1. Metoda greedy;
  2. Subsecvența crescătoare de lungime maximă;
  3. Subșirul de sumă maximală;
  4. Subsecvența comună maximală a două șiruri;
  5. Distanța edit (Levenshtein);
  6. Numărare optime prin programare dinamică.

Probleme date la concursuri:

  1. Tren (Campion 2004)
  2. Sir1 (Cupa Mărțișor 2013)
  3. Lăcusta (OJI 2005)
  4. Cub (Olimpiada locală 2012)
  5. Șiruri 2 (OMI 2010)
  6. Meteor (ONI 2004)
  7. Neo (ONI 2004)
  8. Rafturi (ONI 2009)
  9. Char (ONI 2010)
  10. Flori2 (ONI 2010)
  11. Raze (ONI 2010)
  12. Simetric (ONI 2010)
  13. Joc6 (ONI 2011)
  14. Poteci (ONI 2011)
  15. Optim (ONI 2012)
  16. Zmax (ONI 2013)
  17. Placa (ONI 2014)
  18. Faleza (ONI 2017)
  19. Points2 (Shumen 2010 Junior)
  20. Balance (Shumen 2012 Juniori)

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!

Nerdvana Education
Română
X