#4005
Aveți o foaie de hârtie dreptunghiulară cu dimensiunile N x M centimetri. Foaia este împărțită într-o rețea de pătrate de 1 x 1 centimetri fiecare. Puteți considera foaia ca un sistem de coordonate – colțul din stânga jos este originea (0,0) a sistemului de coordonate și fiecărui vârf al unui pătrat îi sunt atribuite coordonate întregi – între 0 și N pe axa x și între 0 și M pe axa y. Primiți o succesiune de cereri de tăiere a foii de hârtie (sau mai exact, a părții care a mai rămas din ea). Fiecare cerere este definită de o pereche de numere întregi nenegative (p, q), reprezentând un punct din rețea, care este situat în porțiunea netăiată a hârtiei. Scrieți un program care după fiecare cerere calculează aria figurii rămase.
| Problema | cutting | Operații I/O |
tastatură/ecran
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 512 MB
/
Stivă 64 MB
|
| Id soluție | #39752886 | Utilizator | |
| Fișier | cutting.cpp | Dimensiune | 6.20 KB |
| Data încărcării | 16 Noiembrie 2022, 23:08 | Scor/rezultat | 25 puncte |
cutting.cpp: In member function 'int BigNumber::operator[](int)': cutting.cpp:22:36: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] return (pos < this->c.size() ? this->c[pos] : 0); ^ cutting.cpp: In member function 'BigNumber BigNumber::operator+(BigNumber)': cutting.cpp:36:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < this->size() || i < oth.size() || t; i++, t /= BASE) { ^ cutting.cpp:36:57: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < this->size() || i < oth.size() || t; i++, t /= BASE) { ^ cutting.cpp:37:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(i == ret.size()) { ^ cutting.cpp: In member function 'BigNumber BigNumber::operator*(long long int)': cutting.cpp:48:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < this -> size() || t; i++, t /= BASE) { ^ cutting.cpp:49:30: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(i == ret.size()) { ^ cutting.cpp: In member function 'BigNumber BigNumber::operator-(BigNumber)': cutting.cpp:61:39: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i = 0; i < this->size(); i++) { ^ cutting.cpp:58:13: warning: unused variable 'i' [-Wunused-variable] int i; ^ cutting.cpp: In function 'std::ostream& operator<<(std::ostream&, BigNumber)': cutting.cpp:102:28: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(i != a.size() - 1) { ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 1 | 0 secunde | OK. | 5 | 5 | ||
| 2 | 0 secunde | OK. | 5 | 5 | ||
| 3 | 0.008 secunde | OK. | 5 | 5 | ||
| 4 | 0.028 secunde | Raspuns gresit. | 5 | 0 | ||
| 5 | 0.036 secunde | OK. | 5 | 5 | ||
| 6 | 0 secunde | Raspuns gresit. | 5 | 0 | ||
| 7 | 0.344 secunde | Raspuns gresit. | 5 | 0 | ||
| 8 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 9 | 0.04 secunde | OK. | 5 | 5 | ||
| 10 | 0.384 secunde | Raspuns gresit. | 5 | 0 | ||
| 11 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 12 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 13 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 14 | 0.02 secunde | Raspuns gresit. | 5 | 0 | ||
| 15 | 0.06 secunde | Raspuns gresit. | 5 | 0 | ||
| 16 | 0.016 secunde | Raspuns gresit. | 5 | 0 | ||
| 17 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 18 | 0.024 secunde | Raspuns gresit. | 5 | 0 | ||
| 19 | 0.288 secunde | Raspuns gresit. | 5 | 0 | ||
| 20 | Depășit | Limita de timp depășită | 5 | 0 | ||
| Punctaj total | 25 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema cutting 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ă.