#2387
mosia1
Păcală a primit, aşa cum era învoiala, un petec de teren de pe moşia boierului. Terenul este împrejmuit complet cu segmente drepte de gard ce se sprijină la ambele capete de câte un par zdravăn. La o nouă prinsoare, Păcală iese iar in câştig şi primeşte dreptul să strămute nişte pari, unul câte unul, cum i-o fi voia, astfel încât să-şi extindă suprafaţa de teren. Dar învoiala prevede că fiecare par poate fi mutat în orice direcţie, dar nu pe o distanţă mai mare decât o valoare dată (scrisă pe fiecare par) şi fiecare segment de gard, fiind cam şubred, poate fi rotit şi prelungit de la un singur capăt, celălalt rămânând nemişcat.
Cunoscând poziţiile iniţiale ale parilor şi valoarea înscrisă pe fiecare par, se cere suprafaţa maximă cu care poate să-şi extindă Păcală proprietatea. Se ştie că parii sunt daţi într-o ordine oarecare, poziţiile lor iniţiale sunt date prin numere întregi de cel mult 3
cifre, distanțele pe care fiecare par poate fi deplasat sunt numere naturale strict pozitive şi figura formată de terenul iniţial este un poligon neconcav.
OJI 2004
Problema | mosia1 | Operații I/O |
mosia1.in /mosia1.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #50239795 | Utilizator | |
Fișier | mosia1.cpp | Dimensiune | 1.00 KB |
Data încărcării | 01 Aprilie 2024, 21:21 | Scor / rezultat | Eroare de compilare |
mosia1.cpp:3:13: error: variable 'std::ifstream cin' has initializer but incomplete type ifstream cin("mosia1.in"); ^ mosia1.cpp:4:14: error: variable 'std::ofstream cout' has initializer but incomplete type ofstream cout("mosia1.out"); ^ mosia1.cpp: In function 'bool comp(punct, punct)': mosia1.cpp:13:35: error: 'atan2' was not declared in this scope return atan2(a.y - Y , a.x - X) < atan2(b.y - Y , b.x - X); ^ mosia1.cpp: In function 'double dist(punct, punct)': mosia1.cpp:18:34: error: 'sqrt' was not declared in this scope return sqrt(dx * dx + dy * dy); ^ mosia1.cpp: In function 'int main()': mosia1.cpp:22:5: error: reference to 'cin' is ambiguous cin >> n; ^ mosia1.cpp:3:10: note: candidates are: <typeprefixerror>cin ifstream cin("mosia1.in"); ^ In file included from mosia1.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ mosia1.cpp:25:9: error: reference to 'cin' is ambiguous cin >> v[i].x >> v[i].y >> v[i].d; ^ mosia1.cpp:3:10: note: candidates are: <typeprefixerror>cin ifstream cin("mosia1.in"); ^ In file included from mosia1.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: std::istream std::cin extern istream cin; /// Linked to standard input ^ mosia1.cpp:31:32: error: 'sort' was not declared in this scope sort(v + 1, v + n + 1, comp); ^ mosia1.cpp:42:5: error: reference to 'cout' is ambiguous cout << fixed << setprecision(4) << max(d1[n], d2[n]); ^ mosia1.cpp:4:10: note: candidates are: <typeprefixerror>cout ofstream cout("mosia1.out"); ^ In file included from mosia1.cpp:1:0: /usr/include/c++/4.8/iostream:61:18: note: std::ostream std::cout extern ostream cout; /// Linked to standard output ^ mosia1.cpp:42:36: error: 'setprecision' was not declared in this scope cout << fixed << setprecision(4) << max(d1[n], d2[n]); ^ mosia1.cpp: In function 'bool comp(punct, punct)': mosia1.cpp:14:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ mosia1.cpp: In function 'double dist(punct, punct)': mosia1.cpp:19:1: warning: control reaches end of non-void function [-Wreturn-type] } ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema mosia1 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ă.