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ța 3 se va scrie in fișier la fiecare runda conținutul cozii de meciuri alături de conținutul stivelor de învingători si învinși.
Pentru cerința 4 se dorește afișarea BST -ului în ordine descrescătoare. Adică afișarea clasamentului în ordine descrescătoare.
Pentru cerința 5 se dorește crearea unui AVL cu echipele de la sub punctul anterior și scrierea în fișier a echipelor de la nivelul 2.
Structurile de date necesare trebuie deduse astfel încât sa respecte normele de buna implementare Ex: un jucator are nume, prenume, experienta - prin urmare se va folosi un tip de date care sa caracterizeze aceasta entitate:(Acelasi lucru trebuie facut si pentru alte tipuri de date necesare realizarii aplicatiei.)
typedef struct Jucator{
char *nume, *prenume;
int xp;
} Jucator;
Formula de calcul a punctajului de echipa este: media aritmetica a experienței (xp) jucătorilor din echipa respectiva. La fiecare meci câștigat punctajul de echipa va creste cu 1.(Trebuie modificate toate punctajele jucătorilor echipei pentru realizarea acestui task.)
Fisierel folosite de checker arata astfel:
- cerinte.in
1 0 0 0 0
Obiectivele se vor realiza în funcție de cum apar în fișierul cu cerinte cerinte.in (Spre exemplu dacă fișierul cerinte.in conține 1 0 0 0 0 înseamnă ca se dorește doar realizarea cerinței 1. Se vor folosi ca valori de intrare datele din fișierul 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
În cazul in care un jucator are 2 prenume - acestea sunt scrise cu cratima - si reprezinta un singur sir de caractere. Formatul folosit pentru fprintf este %-25s în cazul afișării meciurilor din coadă.
- rezultate.out
Elixir Junior
Legalize
Savage
The Skyrynners
The Abusement Park
Chafing the Dream
The Big Egos
The Waiver Wire
Elixir Junior -- Legalize
Savage -- The Skyrynners
The Abusement Park -- Chafing the Dream
The Big Egos -- The Waiver Wire
The Big Egos --- 7.10
Chafing the Dream --- 8.10
Savage --- 7.90
Elixir Junior --- 5.40
The Big Egos -- Chafing the Dream
Savage -- Elixir Junior
Savage --- 8.90
Chafing the Dream --- 9.10
Savage -- Chafing the Dream
Chafing the Dream --- 10.10
Executabilul obținut în urma compilării va avea numele lanParty, iar regula de rulare va fi:
./lanParty cerinte.in date.in rezultate.out