#1703
Parchet
Meseria de parchetar a devenit mai uşoară de când a apărut parchetul laminat. Acesta se livrează în plăci pătratice de câte 1
m2 şi montarea lui este destul de uşoară. Gigel este convins că este suficient de priceput să facă această operaţie în propria locuinţă. El dispune de planul locuinţei şi a cumpărat o anumită cantitate reprezentând X
m2 de parchet laminat. Planul locuinţei este descris printr-un tablou bidimensional de dimensiuni N x M
, fiecare element al tabloului reprezentând exact 1
m2. Pereţii sunt reprezentaţi prin caracterul ‘P’
iar suprafeţele camerelor prin caracterul ‘S’
(spaţiu). În planul din figura următoare este descrisă o locuinţă cu 5
camere acestea având respectiv, suprafeţele de 10
, 2
, 1
, 3
, 5
m2.
PPPPPPPPP PSSSPSPSP PSSSPSPPP PSSPPPPSP PSPPSSPSP PSPSSSPSP PPPPPPPPP
Gigel nu este sigur de faptul că parchetul cumpărat îi ajunge. Din această cauză a hotărât iniţial să pună parchetul începând cu camera cea mai mare, apoi în următoarea, în ordinea descrescătoare a suprafeţei şi aşa mai departe, până în momentul în care parchetul rămas nu mai este suficient pentru acoperirea suprafeţei următoarei camere. Nu va lăsa neparchetată o cameră pentru a parcheta una cu o suprafaţă mai mică.
Gigel se mai gândeşte şi la posibilitatea de a acoperi complet un număr maxim de camere folosind întreaga cantitate de parchet.
Fiind date N
, M
, X
şi planul locuinţei să se determine:
C
de camere pe care a reuşit să le acopere Gigel şi numărul R
de m2 de parchet care îi rămân, procedând aşa cum a hotărât iniţial;Problema | Parchet | Operații I/O |
parchet.in /parchet.out
|
---|---|---|---|
Limita timp | 0.3 secunde | Limita memorie |
Total: 2 MB
/
Stivă 2 MB
|
Id soluție | #52902582 | Utilizator | |
Fișier | parchet.cpp | Dimensiune | 960 B |
Data încărcării | 12 Octombrie 2024, 12:35 | Scor / rezultat | Eroare de compilare |
parchet.cpp:9:1: error: expected initializer before 'void' void fill(int a, int b){ ^ parchet.cpp:10:16: error: expected unqualified-id before 'return' if(a<1 || a>n} return; ^ parchet.cpp:11:1: error: expected unqualified-id before 'if' if(b<1 || b>m) return; ^ parchet.cpp:12:1: error: expected unqualified-id before 'if' if(mat[a][b]==0) return; ^ parchet.cpp:13:1: error: 'mat' does not name a type mat[a][b]=0; ^ parchet.cpp:14:1: error: 'aria' does not name a type aria++; ^ parchet.cpp:15:5: error: expected constructor, destructor, or type conversion before '(' token fill(a-1, b); ^ parchet.cpp:16:5: error: expected constructor, destructor, or type conversion before '(' token fill(a+1, b); ^ parchet.cpp:17:5: error: expected constructor, destructor, or type conversion before '(' token fill(a, b+1); ^ parchet.cpp:18:5: error: expected constructor, destructor, or type conversion before '(' token fill(a, b-1) ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Parchet 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ă.