Programare olimpica. Nivel de bază - curs gratuit de la Stepik, pregătire 17 lecții, Data: 1 decembrie 2023.
Miscelaneu / / December 04, 2023
Despre curs
Cursul este destinat în primul rând programatorilor începători. Și pentru un început rapid, vă recomandăm Python. Python este mai ușor de învățat de la zero chiar și pentru un începător în programare, este ușor de scris, iar codul scris este ușor de citit. Python este un limbaj de programare modern, este utilizat pe scară largă pentru învățarea automată, în Data Science și așa mai departe. În ceea ce privește numărul de tutoriale și ofertele de cursuri online, Python îi câștigă fără îndoială peste alții limbi.
Dar dacă doriți să obțineți un succes semnificativ în competițiile de programare, atunci, desigur, în viitor este de preferat să studiați limbajele C/C++, a cărui utilizare garantează obținerea unei soluții complete a problemelor de la olimpiade, așa că am încercat să adăugăm soluții și exemple în C++ celor text. materiale. Toate sarcinile cursului pot fi rezolvate folosind orice limbaj de programare disponibil pe Stepik.
Cursul acoperă următoarele subiecte: algoritmi teoretici ai numerelor, algoritmi de căutare și elementele fundamentale ale structurilor de date. Au fost elaborate sarcini de instruire cu analize și concursuri pentru fiecare subiect. Sunt 59 de sarcini în total. De asemenea, pentru a lua în considerare problemele teoretice și pregătirea, sunt folosite probleme din arhivele diferitelor olimpiade. Soluția tuturor problemelor de practică este discutată pe forum, la care veți avea acces după mai multe încercări, așa că ponderea unor astfel de probleme în curs este mică în comparație cu problemele de la concursuri.
Cerințe inițiale
Cursul este destinat elevilor de liceu și juniori. Cursul poate fi util și pentru profesorii de informatică; suntem gata să împărtășim analize ale soluțiilor la problemele de la concursuri.
Pentru a finaliza cursul, trebuie să aveți cel puțin abilități de programare de bază în Python 3 (ramificare, bucle, tipuri de date, colecții, funcții) sau orice alt limbaj de programare disponibil pe Stepik pentru rezolvarea problemelor programare.
1
bineCandidat la Științe Fizice și Matematice, conferențiar al Departamentului de Algebrice și Sisteme Informaționale la ISU. Din anul 2003 particip la organizarea etapelor regionale și municipale ale Olimpiadei Ruse pentru școlari în domeniul informaticii și TIC din regiunea Irkutsk și din...
Candidat la Științe Fizice și Matematice, conferențiar al Departamentului de Algebrice și Sisteme Informaționale la ISU. Particip la organizarea etapelor regionale și municipale ale olimpiadei rusești pentru școlari în informatică și TIC în Regiunea Irkutsk din 2003 și din 2013 - președinte al comitetului de organizare și al juriului etapelor regionale în informatică din Irkutsk zone. Antrenor de programare la olimpiade.
1
binedr., conferențiar, Departamentul de Informatică, Universitatea Electrotehnică „LETI” din Sankt Petersburg
dr., conferențiar, Departamentul de Informatică, Universitatea Electrotehnică „LETI” din Sankt Petersburg
1
bineStudent, Facultatea de Tehnologii Calculatoare și Informatică, Universitatea Electrotehnică „LETI” din Sankt Petersburg, Departamentul de Informatică
Student, Facultatea de Tehnologii Calculatoare și Informatică, Universitatea Electrotehnică „LETI” din Sankt Petersburg, Departamentul de Informatică
Analiza eficienței algoritmului
1. Bazele analizei eficienței algoritmilor
2. Clase principale de eficienta
Algoritmi teoretici numeric
1. Aritmetica intregi
2. Verificare simplitate
3. Găsirea factorilor primi
4. Sita lui Eratosthenes
5. GCD. algoritmul lui Euclid
6. Concurs final
Algoritmi de căutare
1. Căutare liniară și binară
2. Căutare binară după răspuns
3. Metoda cu două indicatori
4. Concurs final
Structuri de date
1. Structuri liniare de date
2. Stive
3. Coada, Dec
4. Copaci. Morman
5. Concurs final