Problema broscute – descrierea solutiei
Dan Pracsiu
Solutia 1 (ineficienta): Se parcurge sirul de broscute si pentru fiecare pereche de broscute se determina locurile de intalnire. 
Solutia este ineficienta datorita numarului mare de broscute. Complexitate O(K*K).

Solutia 2: Parcurgem lacul pe diagonale.
  - Vom numara pentru fiecare diagonala paralela cu diagonala principala cate broscute sunt pe fiecare astfel de diagonala. Daca doua broscute aflate la coordonatele (x1, y1) si (x2, y2) sunt pe aceeasi astfel de diagonala, atunci |x1 – y1| = |x2 – y2|.
  - Numaram pentru fiecare diagonala paralela cu diagonala secundara cate broscute sunt. Daca doua broscute aflate la coordonatele (x1, y1) si (x2, y2) sunt pe aceeasi astfel de diagonala, atunci x1 + y1 = x2 + y2.
  - Acum parcurgem diagonalele paralele cu diagonala principala (care au broscute) si vedem cu câte diagonale secundare (care au broscute) se intersecteaza. Trebuie sa avem grija ca nu cumva sa numaram în plus, deoarece orice broscuta se afla pe doua diagonale.
Deoarece numarul diagonalelor paralele cu diagonala principala sunt 2N-1 si numarul diagonalelor paralele cu diagonala secundara sunt 2N-1, atunci complexitatea va fi O(N*N).

