Pagini recente »
Diferențe pentru utilizator/nico_ între reviziile 16 și 22
|
Diferențe pentru utilizator/coman_diana între reviziile 9 și 13
|
Clasament adunare
|
Istoria paginii runda/2024-10-29-clasa-5-tema-12
|
Diferențe pentru problema/taieri între reviziile 23 și 31
Nu există diferențe între titluri.
Diferențe între conținut:
== include(page="template/taskheader" task_id="taieri") ==
Avem la dispoziție *n* bare metalice cu aceeași grosime, dar lungimi diferite.
Putem alege oricare bară și să o tăiem, obținând alte două bare, de lungimi mai mici.
Ne dorim ca, folosind doar această operație (deci fără să le putem suda), să obținem un număr de bare de anumite lungimi date.
Mai exact, dându-se un set de 4 numere *a*, *b*, *c*, *d*, trebuie să decidem dacă putem obține *a* bare de lungime 1, *b* bare de lungime 2, *c* bare de lungime 4 și *d* bare de lungime 8.
Odată aplicată o tăiere de lungime *L* asupra unei bare, restul poate fi în continuare folosit pentru a tăia alte bare de oricare dintre lungimile dorite.
Avem la dispoziție *n* bare metalice cu aceeași grosime, dar lungimi diferite. Putem alege oricare bară și să o tăiem, obținând alte două bare, de lungimi mai mici. Ne dorim ca, folosind doar această operație (deci fără să le putem suda), să obținem un număr de bare de anumite lungimi date. Mai exact, dându-se un set de 4 numere *a*, *b*, *c*, *d*, trebuie să decidem dacă putem obține *a* bare de lungime 1, *b* bare de lungime 2, *c* bare de lungime 4 și *d* bare de lungime 8. Odată aplicată o tăiere de lungime *L* asupra unei bare, restul poate fi în continuare folosit pentru a tăia alte bare de oricare dintre lungimile dorite.
h2. Cerință
h2. Date de intrare
Pe prima linie a fișierului de intrare *taieri.in* se află numărul natural *n*. Pe linia a doua se află cele *n* numere naturale ce reprezintă lungimile barelor inițiale.
Pe linia a treia se află un număr natural *m* ce reprezintă numărul de seturi de 4 numere. Pe fiecare din următoarele *m* linii se află câte patru numere naturale *a b c d* cu semnificația de mai sus.
Pe prima linie a fișierului de intrare *taieri.in* se află numărul natural *n*.
Pe linia a doua se află cele *n* numere naturale ce reprezintă lungimile barelor inițiale.
Pe linia a treia se află un număr natural *m* ce reprezintă numărul de seturi de 4 numere.
Pe fiecare din următoarele *m* linii se află câte patru numere naturale *a b c d* cu semnificația de mai sus.
Numerele de pe aceeași linie sunt separate prin câte un spațiu.
h2. Date de ieșire
table(example).
|_. taieri.in |_. taieri.out |_. Explicații |
| 5
10 12 8 3 1
3
2 3 2 2
31 0 0 0
1 13 0 1
10 12 8 3 1
3
2 3 2 2
31 0 0 0
1 13 0 1
| 1 1 0
| *La primul set* - 2 3 2 2 trebuie obținute două bare de lungime 1,
trei bare de lungime 2, două de lungime 4 și două de lungime 8.
Nu există diferențe între securitate.