Detalii evaluare #62914803

Rezumat problemă

#962

Se desenează n cercuri distincte în planul P, numerotate cu numerele de la 1 la n. Pentru fiecare cerc k (k∈{1,2,...,n}) se cunosc: raza cercului, rk, şi coordonatele (xk,yk) ale centrului cercului, coordonate referitoare la reperul cartezian xOy cu originea în punctul O a planului P. Din punctul O, se desenează m drepte distincte, astfel încât pentru fiecare dreaptă, dintre cele m desenate, să existe cel puţin un cerc, dintre cele n, al cărui centru să fie situat pe aceasta şi pentru fiecare cerc desenat, să existe o singură dreaptă, dintre cele m desenate, care să treacă prin centrul lui.

Să se scrie un program care să se determine:
a) numărul m de drepte distincte;
b) cel mai mare număr q de cercuri, dintre cele n, exterioare două câte două, ale căror centre sunt situate pe o aceeaşi dreaptă care trece prin punctul O, dintre cele m desenate;
c) numărul p al dreptelor distincte, dintre cele m desenate, pe care sunt situate centrele a câte q cercuri, dintre cele n, exterioare două câte două.

Detalii

Problema Cerc4 Operații I/O cerc4.in/cerc4.out
Limita timp 0.1 secunde Limita memorie Total: 64 MB / Stivă 8 MB
Id soluție #62914803 Utilizator Serban Ionut (ionutserban)
Fișier cerc4.cpp Dimensiune 1.49 KB
Data încărcării 06 Februarie 2026, 10:05 Scor/rezultat Eroare de compilare

Evaluare

Mesaj compilare

cerc4.cpp:2:1: error: 'ifstream' does not name a type
 ifstream fin("cerc4.in");

 ^
cerc4.cpp:3:1: error: 'ofstream' does not name a type
 ofstream fout("cerc4.out");

 ^
cerc4.cpp:11:5: error: 'vector' does not name a type
     vector<cerc> v;

     ^
cerc4.cpp: In function 'bool cmp(cerc, cerc)':
cerc4.cpp:15:34: error: 'sqrt' was not declared in this scope
     float d1=sqrt(a.x*a.x+a.y*a.y)+a.r;

                                  ^
cerc4.cpp: In function 'int main()':
cerc4.cpp:21:5: error: 'fin' was not declared in this scope
     fin>>n;

     ^
cerc4.cpp:31:19: error: 'struct cerc1' has no member named 'v'
             c1[m].v.push_back({c[i].x,c[i].y,c[i].r});

                   ^
cerc4.cpp:36:27: error: 'struct cerc1' has no member named 'v'
                     c1[m].v.push_back({c[j].x,c[j].y,c[j].r});

                           ^
cerc4.cpp:40:5: error: 'fout' was not declared in this scope
     fout<<m<<" ";

     ^
cerc4.cpp:45:21: error: 'struct cerc1' has no member named 'v'
          sort(c1[i].v.begin(),c1[i].v.end(),cmp);

                     ^
cerc4.cpp:45:37: error: 'struct cerc1' has no member named 'v'
          sort(c1[i].v.begin(),c1[i].v.end(),cmp);

                                     ^
cerc4.cpp:45:48: error: 'sort' was not declared in this scope
          sort(c1[i].v.begin(),c1[i].v.end(),cmp);

                                                ^
cerc4.cpp:47:18: error: 'struct cerc1' has no member named 'v'
          b=c1[i].v[0];

                  ^
cerc4.cpp:48:35: error: 'sqrt' was not declared in this scope
          prev=sqrt(b.x*b.x+b.y*b.y)+b.r;

                                   ^
cerc4.cpp:49:22: error: 'struct cerc1' has no member named 'v'
          int l=c1[i].v.size(),q=1;

                      ^
cerc4.cpp:52:27: error: 'struct cerc1' has no member named 'v'
              cerc a=c1[i].v[j];

                           ^
cerc4.cpp:56:18: error: 'q' was not declared in this scope
                  q++;

                  ^
cerc4.cpp:60:13: error: 'q' was not declared in this scope
          if(q>maxi)

             ^

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema Cerc4 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.

Du-te sus!