#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, r
k
, şi coordonatele (x
k
,y
k
)
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ă.
OJI 2009, clasele XI-XII
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 | #56654179 | Utilizator | |
Fișier | cerc4.cpp | Dimensiune | 3.38 KB |
Data încărcării | 01 Martie 2025, 08:16 | Scor / rezultat | 100 puncte |
cerc4.cpp: In member function 'bool cerc::operator<(const cerc&)': cerc4.cpp:44:29: warning: suggest parentheses around '&&' within '||' [-Wparentheses] x == other.x && r < other.r; ^ cerc4.cpp: In function 'bool cmp1(cerc, cerc)': cerc4.cpp:65:27: warning: suggest parentheses around '&&' within '||' [-Wparentheses] c1.dr == c2.dr && c1.r < c2.r; ^ cerc4.cpp: In function 'bool cmp1__(cerc, cerc)': cerc4.cpp:71:39: warning: suggest parentheses around '&&' within '||' [-Wparentheses] c1.x + c1.r == c2.x + c2.r && c1.r < c2.r; ^ cerc4.cpp: In function 'bool cmp1_(cerc, cerc)': cerc4.cpp:76:39: warning: suggest parentheses around '&&' within '||' [-Wparentheses] c1.x + c1.r == c2.x + c2.r && c1.r < c2.r; ^ cerc4.cpp: In function 'void solve1()': cerc4.cpp:137:42: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 1; i < d.second.size(); i++) ^ cerc4.cpp:127:12: warning: variable 'mmax' set but not used [-Wunused-but-set-variable] double mmax = 0; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | Exemplu | |
2 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
3 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
4 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
5 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
6 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
7 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
8 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
9 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
10 | 0 secunde | Cerinta a - corect. Cerinta b - corect. Cerinta c - corect. | 10 | 10 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Cerc4 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.