Diferente pentru implica-te/arhiva-educationala intre reviziile #28 si #223

Diferente intre titluri:

Arhiva Educationala
Arhiva educaţională

Diferente intre continut:

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':propuneri/6-arhiva-educationala.
(toc)*{text-align:center} *Continut*
* 'De ce m-as baga?':implica-te/arhiva-educationala#dece
* 'Cum pot sa contribui?':implica-te/arhiva-educationala#cum
* 'Cine lucreaza':implica-te/arhiva-educationala#cine
* 'Continutul arhivei':implica-te/arhiva-educationala#probleme
* 'Cum ne poti ajuta?':implica-te/arhiva-educationala#cum
* 'Echipa implicata in proiect':implica-te/arhiva-educationala#echipa
* 'Documentatie':implica-te/arhiva-educationala#documentatie
* 'Sugestii':implica-te/arhiva-educationala#sugestii
 
h2(#dece). 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
 
h2(#cum). Cum pot sa contribui?
* 'Continutul arhivei':implica-te/arhiva-educationala#probleme
1. Contacteaza unul din responsabilii pentru acest proiect pe forumul infoarena:
h2(#cum). Cum ne poti ajuta?
* == user(user="filipb" type="tiny") ==
* == user(user="PaulDB" type="tiny") ==
1. Ofera sugestii la dezvoltarea proiectului.
2. Contribuie cu feedback pentru a imbunatati calitatea problemelor existente.
3. Vino cu idei pentru probleme noi.
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.
Ajuta si tu la randul tau comunitatea infoarena!
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':implica-te/arhiva-educationala#documentatie.
h2(#echipa). Echipa implicata in proiect
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!
Echipa care este implicata activ in acest proiect este alcatuita din urmatorii membri:
h2(#cine). Cine lucreaza
* == user(user="Marius" type="tiny") ==, coordonator de proiect
* == user(user="savim" type="tiny") ==
* == user(user="cezarmocan" type="tiny") ==
* == user(user="GavrilaVlad" type="tiny") ==
* == user(user="mishu91" type="tiny") ==
* == user(user="GheorgheMihai" type="tiny") ==
Responsabili de proiect:
Pe langa cei de mai sus, de-a lungul timpului au contribuit considerabil la acest proiect 'o serie de alti membri ai comunitatii infoarena':implica-te/arhiva-educationala/membri-emeritus. Le multumim pe aceasta cale!
* == user(user="filipb" type="tiny") ==
* == user(user="PaulDB" type="tiny") ==
h2(#documentatie). Documentatie
Voluntari:
Fiecare voluntar are obligatia sa citeasca urmatoarele materiale inainte de a putea trece efectiv la lucru:
* == user(user="gabitzish1" type="tiny") ==
* == user(user="Florian" type="tiny") ==
* == user(user="Tabara" type="tiny") ==
* 'Editare de probleme':documentatie/editare-de-probleme
* 'Ghid evaluator':documentatie/ghid-evaluator
* 'Ghid pentru arhiva educationala':documentatie/arhiva-educationala
h2(#probleme). Continutul arhivei
In tabelul 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.
 
*Tabelul este in proces de completare!*
In tabelul de mai jos se afla probleme la care se lucreaza in momentul de fata. Finalizarea lor reprezinta unul dintre $OKR$-urile din trimestrul IV, 2009. Pentru a va familiariza si cu restul obiectivelor din acest trimestru, cititi 'aici':okr.
%{color:red} Nu va apucati de lucru pana nu sunteti informati despre modul in care se baga problemele!%
table(example). |_. Denumire problema|_. Voluntar|_. Finalizat|_. Review |
| 'Arbori de intervale (aplicaţie cu 4 tipuri de operaţii)':problema/arbint2 | == user(user="savim" type="tiny") == | ==Stars(rating="1" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'Arbori de intervale 2D':problema/arbint2d | == user(user="savim" type="tiny") == | ==Stars(rating="0" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'NIM':problema/nim | == user(user="GavrilaVlad" type="tiny") == | ==Stars(rating="1" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'Punct în poligon oarecare':problema/pinpo | == user(user="cezarmocan" type="tiny") == | ==Stars(rating="0.5" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'Treapuri':problema/treapuri | == user(user="marius" type="tiny") == | ==Stars(rating="0.5" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'Interclasarea a doi vectori sortati':problema/interclas | == user(user="pauldb" type="tiny") == | ==Stars(rating="0.5" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'Aria unui poligon':problema/ariapoli | == user(user="pauldb" type="tiny") == | ==Stars(rating="0.5" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
| 'Arbori de căutare':problema/arbcautare | ==user(user="bogdan2412" type="tiny") == | ==Stars(rating="0.5" scale="1" type="small")== | ==Stars(rating="0" scale="1" type="small")== |
 
In tabelul de mai jos se afla sugestii privind algoritmii care trebuie sa se gaseasca sub forma de probleme in arhiva educationala. Puteti veni oricand cu propuneri si sugestii de probleme noi pe "forum":/forum/index.php?topic=3401.0.
 
table(example). |_. Denumire problema|_. Categoria|
|Knapsack|Programare dinamica|
|Sprague-Grundy|Teoria jocurilor|
|Algoritmul lui Gauss|Matematica|
| Principiul lui Dirichlet | Matematică |
|Problema de acoperire|Programare dinamica + Backtracking|
|Heavy Path Decomposition|Algoritmi pe grafuri|
|Siruri de sufixe|Siruri de caractere|
|Algoritmi {$O(sqrtN)$}|Structuri de date|
|Ortogonal Range Search|Structuri de date|
|Intersectia a doua drepte|Geometrie|
|Punct in poligon convex|Geometrie|
|Minimum enclosing circle|Geometrie|
|Sortare prin numarare|Diverse|
|RadixSort|Diverse|
|Operatii pe numere mari|Diverse|
table(example). |_. Denumire problema |_. Categorie|_. Responsabil |_. Stare|
|Algoritmul lui Euclid|Matematica|== user(user="filipb" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul lui Euclid extins|Matematica|-|==Stars(rating="0" scale="1" type="small")==|
|Cel mai lung subsir comun|Programare dinamica|== user(user="filipb" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Cel mai lung subsir crescator|Programare dinamica|== user(user="Florian" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Knapsack|Programare dinamica|== user(user="gabitzish1" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Cautare binara|?|== user(user="Florian" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Parcurgere BFS|Grafuri|== user(user="Florian" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Parcurgere DFS - componente conexe|Grafuri|== user(user="gabitzish1" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Componente biconexe|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Componente tare-conexe|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Sortare topologica|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Lant hamiltonian|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Ciclu eulerian|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul lui Prim|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul lui Kruskal|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul lui Djikstra|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul Floyd-Warshall|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul Bellman-Ford|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Algoritmul Roy-Floyd|Grafuri|== user(user="gabitzish1" type="tiny") ==|==Stars(rating="0" scale="1" type="small")==|
|Flux maxim|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Flux maxim de cost minim|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Cuplaj maxim|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Cuplaj maxim de cost minim|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Lowest Common Ancestor|Grafuri|-|==Stars(rating="0" scale="1" type="small")==|
|Potrivirea sirurilor|Siruri de caractere|-|==Stars(rating="0" scale="1" type="small")==|
|Arbori de sufixe|Siruri de caractere|-|==Stars(rating="0" scale="1" type="small")==|
|Trie|Siruri de caractere|-|==Stars(rating="0" scale="1" type="small")==|
|Heapuri|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Hashuri|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Arbori de intervale|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Arbori de indexati binar|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Range Minimum Query|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Double ended queue (deque)|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Structuri de multimi disjuncte|Structuri de date|-|==Stars(rating="0" scale="1" type="small")==|
|Punct in poligon|Geometrie|-|==Stars(rating="0" scale="1" type="small")==|
|Infasuratoare convexa|Geometrie|-|==Stars(rating="0" scale="1" type="small")==|
|Diagrame Voronoi|Geometrie|-|==Stars(rating="0" scale="1" type="small")==|
 
Mentionam faptul ca anumiti algoritmi pot fi implementati in complexitati diferite. De exemplu, pentru algoritmul de drumuri minime al lui Djikstra exista atat o solutie de complexitate {$O(N^2^)$}, cat si o solutie {$O(M log{~2~} N)$}. In acest caz, propunem sa nu se faca doua probleme diferite, ci sa se diferentieze punctajul in functie de rezolvare. Diferentierea pentru diferite abordari (complexitati) va fi precizata clar in enunt la rubrica de restrictii. De exemplu: "Un algoritm de complexitate {$O(N^2^)$} obtine $50$ de puncte", "Algoritmul Ford-Fulkerson obtine 30 de puncte. Pentru punctaj maxim este necesara implementarea algoritmului lui Dinic.".
 
 
h2(#sugestii). Sugestii
 
_Cosmin:_ ar fi misto sa facem niste useri, admin sau comisie 1 2 3, ca sa poata fi cautate in arhiva usor solutiile oficiale, sau putem pune link la ele din textul problemei.
_Cosmin:_ de asemenea nu cred ca trebuie sa ne chinuim la teste foarte tare, e important ca pe teste sa iti dai seama daca algoritmul e corect si din timpii de executie te poti prinde cat de eficient e.
_astronomy:_ cred ca acum ar trebui sa-si spuna mai multi parerea si sa se ajunga la un format clar in ceea ce priveste problemele. de exemplu, eu ma gandesc sa existe o pagina mare pentru tehnica respectiva, iar aceasta pagina sa contina la inceput o mica introducere, apoi linkuri catre articole sau alte materiale de documentatie, apoi o lista cu problemele care fac parte din arhiva educationala (eventual la fiecare problema si idei de rezolvare daca este cazul si linkuri spre sursele "comisiei") iar apoi o lista cu alte probleme care se pot rezolva folosind cele invatate (de preferat problemele sa fie in ordine crescatoare a dificultatii). voi ce credeti?
_Cosmin:_ eu nu cred ca e neaparat sa existe pagina cu mai multe linkuri sau daca exista la inceput nu trebuie sa fie foarte detaliata. De exemplu merge o pagina cu 2 linkuri la Dijkstra: Dijkstra simplu si Dijkstra cu heapuri spre doua surse si inca unul spre textul problemei, sau chiar din textul problemei sa fie linkurile. Si apoi pe masura ce lumea se uita si citeste poate adauga cine vrea material mai mult.
h2. Discutii pe forum
Ideea e ca vrei sa ai ceva folositor si functional cat mai repede, apoi articole cu explicatii mai detaliate pot aparea de la sine.
Alta chestie ar fi ca sursele considerate oficiale sa urmeze toate acelasi coding style, si sa aiba comentarii, iar cativa dintre coordonatori sa se asigure ca sursele sunt deajuns de frumos scrise si inteligibile. Asta ar ridica destul de mult calitatea exemplelor si le-ar si uniformiza.
==SmfTopics(board_id="61")==

Diferente intre securitate:

public
protected

Topicul de forum nu a fost schimbat.