Revizia anterioară Revizia următoare
Arhiva educationala
Se propune construirea unei noi arhive de probleme care sa aiba exclusiv scop educational. Spre deosebire de probleme de concurs in care se imbina mai multi algoritmi si rezolvarea de obicei nu este evidenta, problemele din aceasta arhiva vor fi create special pentru cei care vor sa invete cum sa implementeze un algoritm sau o metoda de rezolvare anume. Se va permite accesul la teste, surse si se vor da si link-uri catre documentatie. Mai multe despre acest proiect gasiti aici.
De ce m-as baga?
1. Vei invata cum se creeaza probleme pe infoarena
2. Vei deveni cunoscut
3. Poti invata mai multe despre subiectele care le abordezi
4. Munca ta va ajuta mii de persoane sa invete informatica, si intreaga comunitate iti va fi rescunoscatoare
5. Toate cele de mai sus
Cum pot sa contribui?
1. Contacteaza unul din responsabilii pentru acest proiect pe forumul infoarena:
2. Precizeaza in mesajul tau de intentie ce probleme doresti sa pregatesti. Problemele pe care le-ai ales trebuie sa se regaseasca in tabelul de mai jos sau poti veni cu un algoritm nou care nu e trecut in tabel, iar acesta se va completa corespunzator. Problemele nu trebuie sa fie repartizate nimanui in momentul in care sunt alese.
3. Dupa ce ai obtinut acordul unui responsabil de proiect, vei obtine statutul de helper. In acel moment, vei putea incepe sa editezi problemele. Va trebui sa redactezi enuntul, sa faci teste si eventual un evaluator. Documentatia necesara se gaseste aici.
4. In momentul in care ai finalizat o problema, ea va fi adaugata de catre un administrator in arhiva educationala. Mii de utilizatori infoarena iti vor multumi pentru initiativa ta!
Cine lucreaza
Responsabili de proiect:
Voluntari:
- Gabriel Bitis •gabitzish1
- Florian Marcu •Florian
- Tabara Mihai •Tabara
- Bondane Cosmin •cos_min
- Bogdan-Cristian Tataroiu •bogdan2412
- Ionescu Vlad •Dastas
- Sima Cotizo •sima_cotizo
- nash mit •nash
- Stefan-Alexandru Filip •Prostu
- Tudorica Constantin Alexandru •tudalex
- Cezar Mocan •CezarMocan
- Bogdan-Alexandru Stoica •fireatmyself
Documentatie
Problemele din arhiva educationala se creeaza la fel ca orice alta problema de pe infoarena. Pentru a afla cum poti crea o problema, consulta materialele de aici. Deosebirea dintre o problema obisnuita de pe infoarena si o problema din arhiva educationala este modul in care sunt formatate.
Astfel, o problema din arhiva educationala trebuie sa respecte in plus urmatoarele reguli:
- Toate testele si sursele trimise vor fi vizibile oricarui utilizator.
- Enuntul problemei va contine o sectiune speciala numita Indicatii de rezolvare, in care vor fi precizate link-uri catre diferite articole ce trateaza tema respectiva sau carti in care este prezentat subiectul in cauza.
- Pentru problemele in care exista mai multe rezolvari, se va preciza la sectiunea Restrictii sau eventual la Indicatii de rezolvare, punctajul orientativ obtinut de fiecare complexitate sau metoda in parte. De exemplu, pentru algoritmul de drumuri minime a lui Djikstra, se poate preciza ca un algoritm de complexitate O(N2) obtine 50 de puncte, in timp ce o abordare O(Mlog2N) conduce la obtinerea punctajului maxim.
- Fiecare problema va avea si un link catre sursa oficiala, scrisa de unul din membrii echipei infoarena sau de unul din responsabilii de proiect. Linkul va fi introdus in enuntul problemei de autorul sursei sau de voluntarul pe problema.
- Optional, se pot preciza o serie de probleme de pe site-uri cu evaluator automat (infoarena, sgu, uva, timus, etc), a caror rezolvare se bazeaza pe algoritmul in cauza. Link-urile catre aceste probleme vor aparea la sectiunea Probleme suplimentare.
- De asemenea, tot optional, evaluatorul pentru problema trebuie sa returneze mesaje cat mai diverse pentru ca utilizatorii sa isi poate descoperi usor eventualele greseli.
- In momentul in care sursa oficiala este finalizata si problema este verificata de un administrator, ea va fi introdusa in arhiva educationala.
Exemple de probleme pentru aceasta arhiva gasiti mai jos:
Continutul arhivei
In tabelele de mai jos se afla cei mai importanti algoritmi care trebuie sa se gaseasca sub forma de probleme in arhiva educationala. Pentru fiecare problema este trecut si un responsabil. Responsabilul pe problema va fi cel care s-a oferit prin voluntariat sa o introduca in arhiva. El va fi cel care va scrie enuntul, va crea testele si eventual un evaluator.
Puteti veni oricand cu propuneri si sugestii de probleme noi pe forum!
Matematica:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Algoritmul lui Euclid | Filip Cristian Buruiana •filipb | |
Algoritmul lui Euclid extins | Bogdan-Cristian Tataroiu •bogdan2412 | |
Ciurul lui Erathostenes | Filip Cristian Buruiana •filipb | |
Algoritmul lui Gauss | - | |
Principiul includerii si excluderii | - |
Backtracking:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Permutari | Cezar Mocan •CezarMocan | |
Combinari | Cezar Mocan •CezarMocan | |
Submultimi | Cezar Mocan •CezarMocan |
Programare dinamica:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Cel mai lung subsir comun | Filip Cristian Buruiana •filipb | |
Cel mai lung subsir crescator | Florian Marcu •Florian | |
Knapsack | Gabriel Bitis •gabitzish1 | |
Subsecventa de suma maxima | - |
Algoritmi pe grafuri:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Parcurgere BFS | Florian Marcu •Florian | |
Parcurgere DFS - componente conexe | Gabriel Bitis •gabitzish1 | |
Componente biconexe | - | |
Componente tare-conexe | Tabara Mihai •Tabara | |
Sortare topologica | Tabara Mihai •Tabara | |
Lant hamiltonian | - | |
Ciclu eulerian | - | |
Arbore partial de cost minim | Tabara Mihai •Tabara | |
Algoritmul lui Djikstra | Ionescu Vlad •Dastas | |
Algoritmul Floyd-Warshall/Roy-Floyd | Gabriel Bitis •gabitzish1 | |
Algoritmul Bellman-Ford | Ionescu Vlad •Dastas | |
Flux maxim | Bogdan-Alexandru Stoica •fireatmyself | |
Flux maxim de cost minim | Bogdan-Alexandru Stoica •fireatmyself | |
Cuplaj maxim | Bogdan-Alexandru Stoica •fireatmyself | |
Cuplaj maxim de cost minim | Bogdan-Alexandru Stoica •fireatmyself | |
Lowest Common Ancestor | Bogdan-Cristian Tataroiu •bogdan2412 |
Siruri de caractere:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Potrivirea sirurilor | Bogdan-Cristian Tataroiu •bogdan2412 | |
Arbori de sufixe | - | |
Trie | - |
Structuri de date:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Heapuri | - | |
Hashuri | - | |
Arbori de intervale | Bondane Cosmin •cos_min | |
Arbori de intervale aplicatie 1 | - | |
Arbori de intervale aplicatie 2 | - | |
Arbori de intervale aplicatie 3 | - | |
Arbori de intervale aplicatie 4 | - | |
Algoritmi O(sqrtN) | - | |
Arbori indexati binar | Bondane Cosmin •cos_min | |
Range Minimum Query | - | |
Double ended queue (deque) | - | |
Structuri de multimi disjuncte | - | |
Treapuri | - |
Geometrie:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Intersectia a doua drepte | nash mit •nash | |
Aria unui poligon | - | |
Punct in poligon | - | |
Infasuratoare convexa | nash mit •nash | |
Diagrame Voronoi | - | |
Distanta minima intre doua puncte in plan | - | |
Distanta maxima intre doua puncte in plan | - |
Diverse:
Denumire problema | Responsabil | Finalizat |
---|---|---|
Cautare binara | Florian Marcu •Florian | |
Ridicare la putere in timp logaritmic | Tudorica Constantin Alexandru •tudalex | |
Evaluare de expresii | Sima Cotizo •sima_cotizo | |
Sprague-Grundy(Teoria jocurilor) | - | |
Statistici de ordine | - | |
Operatii pe numere mari | == user(user="savim" type="tiny" |