Se consideră un tablou tridimensional A de dimensiune M x N x P ale cărei elemente trebuie completate astfel încât orice element are valoarea egală cu numărul elementelor vecine care sunt prime. Două elemente Aijk și Ai'j'k' sunt vecine dacă și numai dacă max(|i - i'|, |j - j'|, |k - k'|) = 1, 1 <= i, i' <= M, 1 <= j, j' <= N, 1 <= k, k' <= P.
Valoarea 0 poate fi folosită ca joker, în sensul că unui element i se poate atribui această valoare indiferent de numărul elementelor vecine care sunt prime. Punctajul unui tablou este dat de suma elementelor sale. Va trebui să completați tabloul astfel încât punctajul său să fie cât mai mare posibil.
Fișierul de intrare 3D.IN conține valorile M, N și P, separate prin câte un spațiu.
Fișierul de ieșire 3D.OUT va avea M x N x P linii, fiecare conținând câte un număr reprezentând valoarea unui element al tabloului. Elementele tabloului vor fi ordonate crescător în funcție de primul index i, pentru valori egale ale primului index în funcție de al doilea index j, iar pentru valori egale ale primilor doi indecși în funcție de al treilea index k.
De exemplu, pentru M = N = P = 2 ordinea va fi A111, A112, A121, A122, A211, A212, A221, A222.
1 <= M, N, P <= 30.
3D.IN
Vom considera că pentru fiecare test, se vor putea obține cel mult X puncte.
Concurenții care vor obține cea mai mare valoare PtMax pentru punctajul tabloului vor primi X puncte pentru testul respectiv.2 2 2 3D.OUT 7 7 7 7 7 7 7 7
Ceilalți concurenți, care au completat corect tabloul A și au obținut un punctaj Pt, vor obține X * Pt / PtMax puncte pentru testul respectiv. Această valoare va fi aproximată cu două zecimale exacte. Punctajul final va fi obținut prin adunarea punctajelor de la fiecare test și rotunjirea acestuia la cel mai apropiat număr întreg. Dacă tabloul nu este completat corect, concurenții nu vor primi nici un punct pentru testul respectiv. De exemplu, dacă pentru un test se pot obține cel mult 5 puncte, cel mai bun rezultat obținut de un concurent constă într-un tablou cu punctajul 56, iar un alt concurent obține o soluție cu punctajul 25, atunci, pentru testul respectiv, punctajul concurentului va fi de 5 * 25 / 56 = 2.23 puncte. |