#2124
Gigel vrea să confecţioneze un ornament pentru pomul de iarnă format din pătrăţele frumos colorate. Pătrăţelele pot arăta ca în desenul alăturat. Se observă faptul că ele pot avea 4 culori diferite pe cele 4 laturi, 3, 2 sau chiar o singură culoare pe toate cele 4 laturi ale pătrăţelului.
Gigel are la dispoziţie n (n pătrat perfect) pătrăţele egale de acest tip cu laturile colorate doar în patru culori (alb, roşu, galben, albastru). Le vom numerota simplu de la 1 la 4.

Să se scrie un program care primeşte o listă de n pătrăţele colorate şi determină o aranjare a lor sub forma de pătrat de forma k•k (k•k = n) astfel încât două laturi adiacente să aibă aceeaşi culoare, precum şi numărul de astfel de aranjări.
Olimpiada Municipala Informatica Iasi 2015
| Problema | Ornament | Operații I/O |
ornament.in/ornament.out
|
|---|---|---|---|
| Limita timp | 0.2 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
| Id soluție | #61866405 | Utilizator | |
| Fișier | ornament.cpp | Dimensiune | 1.04 KB |
| Data încărcării | 12 Decembrie 2025, 19:09 | Scor/rezultat | 90 puncte |
ornament.cpp: In function 'void tipar()': ornament.cpp:9:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=1;i<=n;i++){ ^ ornament.cpp: In function 'bool verificare(int, int)': ornament.cpp:19:12: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(poz>i1){ ^ ornament.cpp: In function 'void back(int)': ornament.cpp:26:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=1;i<=n;i++){ ^ ornament.cpp:31:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(k<n)back(k+1); ^ ornament.cpp: In function 'int main()': ornament.cpp:40:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(int i=1;i<=n;i++){ ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 1 | 0 secunde | OK | 5 | 5 | Exemplu | |
| 2 | 0 secunde | OK | 5 | 5 | ||
| 3 | 0.028 secunde | OK | 5 | 5 | ||
| 4 | 0 secunde | OK | 5 | 5 | ||
| 5 | 0 secunde | OK | 5 | 5 | ||
| 6 | 0 secunde | OK | 5 | 5 | ||
| 7 | 0 secunde | OK | 5 | 5 | ||
| 8 | 0 secunde | OK | 5 | 5 | ||
| 9 | 0 secunde | OK | 5 | 5 | ||
| 10 | 0 secunde | OK | 5 | 5 | ||
| 11 | 0 secunde | OK | 5 | 5 | ||
| 12 | 0 secunde | OK | 5 | 5 | ||
| 13 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 14 | 0.036 secunde | OK | 5 | 5 | ||
| 15 | 0 secunde | OK | 5 | 5 | ||
| 16 | 0 secunde | OK | 5 | 5 | ||
| 17 | 0 secunde | OK | 5 | 5 | ||
| 18 | 0 secunde | OK | 5 | 5 | ||
| 19 | Depășit | Limita de timp depășită | 5 | 0 | ||
| 20 | 0.096 secunde | OK | 5 | 5 | ||
| Punctaj total | 90 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Ornament 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ă.