Aici sunt prezentate diferențele dintre versiunile selectate și versiunea curentă a paginii.
Ambele părți revizuirea anterioară Versiuni anterioare Urmatoarea versiune | Versiuni anterioare Urmatoarea versiune Ambele părți următoarea reviziune | ||
teme2019:tema-1 [2019/03/10 12:32] gabriel.rusu [Punctaje si Detalii Tehnice] |
teme2019:tema-1 [2019/03/11 00:24] mihai.iacov [Exemplu] |
||
---|---|---|---|
Linia 6: | Linia 6: | ||
- Implementarea unei funcționalități practice folosind aceste concepte | - Implementarea unei funcționalități practice folosind aceste concepte | ||
===== Informații ===== | ===== Informații ===== | ||
- | - Deadline hard, **TODO aprilie ora 23:59** (termen limită - **nu se obţin puncte** pe soluţiile trimise mai târziu) | + | - Deadline hard, **14 aprilie ora 23:59** (termen limită - **nu se obţin puncte** pe soluţiile trimise mai târziu) |
- Trimiterea temelor se face pe platforma [[https:// | - Trimiterea temelor se face pe platforma [[https:// | ||
- Checker-ul offline îl puteţi descărca de la această [[https:// | - Checker-ul offline îl puteţi descărca de la această [[https:// | ||
Linia 14: | Linia 14: | ||
Facultatea de Automatica si Calculatoare prin LSAC organizează in fiecare semestru un LAN Party la care participa toți studenții care vor sa își testeze abilitățile la un anumit joc. Se dorește realizarea unei soluții software(program executabil) ce poate automatiza acest proces. | Facultatea de Automatica si Calculatoare prin LSAC organizează in fiecare semestru un LAN Party la care participa toți studenții care vor sa își testeze abilitățile la un anumit joc. Se dorește realizarea unei soluții software(program executabil) ce poate automatiza acest proces. | ||
- | ===== Introducere ===== | + | |
- | TODO detalii introductive | + | |
===== Cerințe ===== | ===== Cerințe ===== | ||
- Se va crea o lista cu informațiile din fișierul date.in | - Se va crea o lista cu informațiile din fișierul date.in | ||
Linia 28: | Linia 27: | ||
* Se vor repeta pașii enumerați pana la aflarea echipelor de pe primele 8 locuri. | * Se vor repeta pașii enumerați pana la aflarea echipelor de pe primele 8 locuri. | ||
- Se va realiza un clasament al ultimelor 8 echipe ramase în competiție sub forma unui BST(Binary Search Tree). Acesta va fi ordonat după punctajul pe echipa și i se va afișa conținutul în ordine descrescătoare. | - Se va realiza un clasament al ultimelor 8 echipe ramase în competiție sub forma unui BST(Binary Search Tree). Acesta va fi ordonat după punctajul pe echipa și i se va afișa conținutul în ordine descrescătoare. | ||
- | - Se va realiza | + | - Se va realiza |
Linia 38: | Linia 37: | ||
=== Detalii Tehnice === | === Detalii Tehnice === | ||
- | * Obiectivele se vor realiza în funcție de cum apar în fișierul cu cerinte c.in (Spre exemplu dacă fișierul c.in conține „1 0 0 0 0” înseamnă ca se dorește doar realizarea cerinței 1. Se vor folosi ca valori de datele din fișierul d.in). Exista mai multe perechi de fișiere c.in si d.in organizate in foldere t1...tn. | ||
* Rezultatele obținute în urma executări cerințelor din fișierul c.in vor fi scrise in fișierul r.out | * Rezultatele obținute în urma executări cerințelor din fișierul c.in vor fi scrise in fișierul r.out | ||
* Pentru **cerințele 1 si 2** este suficienta scrierea in fișierul de rezultate a numelor echipelor si a punctajelor acestora, in ordinea din lista creata, pe cate o linie separata. | * Pentru **cerințele 1 si 2** este suficienta scrierea in fișierul de rezultate a numelor echipelor si a punctajelor acestora, in ordinea din lista creata, pe cate o linie separata. | ||
Linia 52: | Linia 50: | ||
</ | </ | ||
+ | < | ||
+ | </ | ||
===== Exemplu ===== | ===== Exemplu ===== | ||
- | TODO exemplu | + | ** Fisierel folosite de checker arata astfel: ** |
- | Așadar, executabilul | + | <file cerinte.in cerinte.in> |
+ | 1 0 0 0 0 | ||
+ | |||
+ | </ | ||
+ | < | ||
+ | |||
+ | <file date.in date.in> | ||
+ | 10 // numarul de echipe din fisier | ||
+ | 10 The Waiver Wire // numarul de jucatori urmat de numele echipei | ||
+ | Popa Florentina 8 //numele prenumele si punctajul jucatorului 1 | ||
+ | Popescu Anca 9 | ||
+ | Pop Anamaria 9 | ||
+ | Radu Simona 1 | ||
+ | Dumitru Iulian 7 | ||
+ | Stan Roxana 5 | ||
+ | Stoica Oana 5 | ||
+ | Gheorghe Irina 10 | ||
+ | Matei Diana 1 | ||
+ | Ciobanu Mirela 0 | ||
+ | |||
+ | </ | ||
+ | |||
+ | <note warning> | ||
+ | Formatul folosit pentru **fprintf** este **%-25s** în cazul afișării meciurilor din coadă.</ | ||
+ | |||
+ | <file rezultate.out rezultate.out> | ||
+ | | ||
+ | | ||
+ | | ||
+ | The Skyrynners | ||
+ | The Abusement Park | ||
+ | | ||
+ | The Big Egos | ||
+ | The Waiver Wire | ||
+ | | ||
+ | | ||
+ | The Abusement Park | ||
+ | The Big Egos | ||
+ | The Big Egos --- 7.10 | ||
+ | | ||
+ | | ||
+ | | ||
+ | The Big Egos | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | </ | ||
+ | |||
+ | |||
+ | |||
+ | Executabilul | ||
<note tip> | <note tip> | ||
===== Reguli de trimitere ===== | ===== Reguli de trimitere ===== | ||
- | *puteţi încărca mai multe soluţii, se va lua în considerare soluţia cu cel mai mare punctaj trimisă până la termenul limită (todo aprilie, ora 23:59); | + | *puteţi încărca mai multe soluţii, se va lua în considerare soluţia cu cel mai mare punctaj trimisă până la termenul limită (14 aprilie, ora 23:59); |
*Arhiva temei va avea numele GrupaSerie_Nume_Prenume_TemaNr.zip și va fi încărcată pe [[https:// | *Arhiva temei va avea numele GrupaSerie_Nume_Prenume_TemaNr.zip și va fi încărcată pe [[https:// | ||
* Arhiva trimisă conține (direct în rădăcină): | * Arhiva trimisă conține (direct în rădăcină): | ||
Linia 71: | Linia 123: | ||
* Implementarea se va face folosind limbajul C; | * Implementarea se va face folosind limbajul C; | ||
* Implementarea se va face folosind liste.Nu e permisa implementarea cu vector a stivelor, cozii și a listei cu echipe participante. Se recomanda folosirea pointerilor și eliberarea memoriei.; | * Implementarea se va face folosind liste.Nu e permisa implementarea cu vector a stivelor, cozii și a listei cu echipe participante. Se recomanda folosirea pointerilor și eliberarea memoriei.; | ||
+ | * Se va evita pe cat posibil duplicarea nodurilor din lista pentru abateri grave de la aceasta cerința se vor scădea pana la 5 puncte. | ||
* Nu se acceptă implementări cu tipuri de date cu memorie alocată static (se acceptă numai variabile locale de tip buffer pentru stocare temporară înainte de alocare); | * Nu se acceptă implementări cu tipuri de date cu memorie alocată static (se acceptă numai variabile locale de tip buffer pentru stocare temporară înainte de alocare); | ||
* Se va depuncta lucrul nemodularizat (fără funcții).Operațiile pe structurile de date de tip arbore, coada, etc se fac folosind funcții - Ex: adaugaNod, stergeNod, etc. Orice alte manipulări de date se fac, pe cat posibil, prin funcții specializate. | * Se va depuncta lucrul nemodularizat (fără funcții).Operațiile pe structurile de date de tip arbore, coada, etc se fac folosind funcții - Ex: adaugaNod, stergeNod, etc. Orice alte manipulări de date se fac, pe cat posibil, prin funcții specializate. | ||
; | ; | ||
- | * Memoria trebuie eliberată. Dacă nu se respectă această cerință depunctarea este de pana la 5/100 pct (pentru mai mult de O(1) memorie alocată fără eliberare). | + | * Memoria trebuie eliberată. Dacă nu se respectă această cerință depunctarea este de pana la 10/100 pct (restricție aplicabila |
* Menţineţi cel puţin un nivel minimal de aspect al codului şi evitaţi inconsistenţa (indentare haotică, numeroase combinaţii de caractere de tip " | * Menţineţi cel puţin un nivel minimal de aspect al codului şi evitaţi inconsistenţa (indentare haotică, numeroase combinaţii de caractere de tip " | ||
* Dacă soluția voastră nu compilează, | * Dacă soluția voastră nu compilează, | ||
- | * Temele care vor fi copiate vor primi -5 pct şi studenţii implicaţi - mustrări şi vor figura pe blacklist-ul cursului de SDA. | + | * Se va depuncta cu pana 15% din punctajul obtinut implementarea care nu foloseste tipuri de date specifice pentru entitiatile din cerinta (ex: Jucator) |
+ | |||
+ | <note important> | ||