IAP #6: Arhiva educationala

Aceasta pagina descrie o propunere pentru echipa infoarena. Informatiile prezentate aici nu reprezinta planuri oficiale ale Asociatiei infoarena decat daca propunerea este adoptata.
Data2008-01-22
Autor(i)dominoMircea Pasoi domino
StareAPROBAT

Abstract

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.

Motivatie

Desi arhiva contine un numar impresionant de probleme (600+) si este in crestere, cei incepatori in concursurile de algoritmica de obicei nu gasesc aceste probleme foarte folositoare deoarece nu stiu sa le rezolve, sunt prea grele, nu stiu de ce iau 0, TLE, etc.
Asadar se simte lipsa unor probleme elementare, care sa indrume un incepator prin documentatie si acces liber la teste si la sursele celorlati utilizatori.
De asemenea, dupa ce un utilizator citeste un articol pe infoarena sau pe alte site-uri despre un algoritm, cea mai la indemana metoda de a vedea cat de bine a inteles ce-a citit este sa rezolve probleme care folosesc acele notiuni. Acest lucru nu este intotdeauna asa de usor, deoarece de obicei nu exista probleme care sa se poata rezolva aplicand acel algoritm in starea pura.
Spre exemplu, cineva care abia a invatat algoritmul Ford-Fulkerson de flux, ar avea nevoie de o problema in care sa se ceara pur si simplu determinarea unui flux maxim intr-o retea, fara alte complicatii.

Detalii

  • Titlul problemelor vor reprezenta algoritmul care se cere (Ex: 'Flux maxim', 'Dijkstra cu heap-uri', 'Ungar', etc.)
  • Enuntul problemei va prezenta direct ce se cere, fara povesti sau alte vrajeli. Sunt incurajate enunturi de forma: "Se da un graf neorientat G cu N noduri si M muchii ...".
  • Desi nu este obligatoriu, se recomanda ca enunturile sa aiba si link-uri la documentatia necesara pentru a invata algoritmul cu care se rezolva.
  • Oricine va putea vedea testele problemei uitandu-se la atasamente. (Nu trebuie sa fii logat)
  • Oricine va putea vedea sursele trimise pana acum la orice problema. (Nu trebuie sa fii logat)
  • Feedback(Silviu) Pe cat posibil, evaluatorele de la problema asta sa dea informatii despre motivul pentru care a picat un test. De exemplu, pentru o problema in care se cere afisarea unui numar sa se afiseze ceva de genu: "Ai afisat: x, Raspunsul corect: y". Pentru chestii mai complexe unde sunt teste cu anumite particularitati merge un README care descrie testele sau afisate mesaje despre test. Ma gandesc la ceva de genu: "Raspus gresit. In acest test se verifica faptul ca ...".

Implementare

  • Efortul de implementare este aproape zero daca se implementeaza IAP #5.
  • Un mod bun de a intretine aceasta arhiva ar fi in paralel cu proiectul de scris articole si training path-ul. Feedback(Silviu): Trebuie sa extragem o lista de probleme clasice pe care vrem sa le bagam si apoi apelat la baietii care vor sa se implice.
  • Cel mai important lucru este gasirea unui om care sa se ocupe de aceasta arhiva. Feedback(Silviu): Trebuie intrebat PaulDB daca nu vrea sa coordoneze pusul problemelor.

Feedback

Intra pe forum pentru a da feedback.

remote content