#710
Miriapodul Verone trăieşte cel mult 12 luni, dar nu este nefericit, întrucât viaţa i se pare lungă şi frumoasă. I se spune Verone deoarece corpul său cilindric este alcătuit din segmente colorate, iar fiecare segment poate avea doar una dintre culorile: verde, roşu sau negru.
În prima lună de viaţă, corpul miriapodului este format dintr-un singur segment. În fiecare dintre lunile următoare, fiecare segment s creşte în lungime şi se divide în trei segmente: s1, s2 şi s3. Segmentele s1 şi s3 păstrează culoarea segmentului s, în vreme ce segmentul s2, cel din mijloc, se colorează astfel: dacă s era verde, atunci s2 devine roşu. Dacă s era roşu, atunci s2 devine negru. Dacă s era negru, atunci s2 devine verde.
Cineva a găsit un fragment dintr-un asemenea miriapod, rezultat în urma unei lupte fatale pentru miriapod, cu o altă vieţuitoare.
Cunoscând culoarea unicului segment în prima lună de viaţă a miriapodului şi succesiunea de culori a fragmentului găsit, scrieţi un program care determină vârsta acestuia şi succesiunea de culori a tuturor segmentelor sale înainte de începerea luptei.
| Problema | Verone | Operații I/O |
verone.in/verone.out
|
|---|---|---|---|
| Limita timp | 0.2 secunde | Limita memorie |
Total: 6 MB
/
Stivă 6 MB
|
| Id soluție | #61948458 | Utilizator | |
| Fișier | verone.cpp | Dimensiune | 520 B |
| Data încărcării | 18 Decembrie 2025, 11:49 | Scor/rezultat | 100 puncte |
verone.cpp: In function 'int main()': verone.cpp:14:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] for(j=0;j<b.size();j++) ^ verone.cpp:19:27: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] if(a.find(frag)!=-1) ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 1 | 0 secunde | Corect ! | 10 | 10 | ||
| 2 | 0 secunde | Corect ! | 10 | 10 | ||
| 3 | 0 secunde | Corect ! | 10 | 10 | ||
| 4 | 0 secunde | Corect ! | 10 | 10 | ||
| 5 | 0 secunde | Corect ! | 10 | 10 | ||
| 6 | 0 secunde | Corect ! | 10 | 10 | ||
| 7 | 0 secunde | Corect ! | 10 | 10 | ||
| 8 | 0 secunde | Corect ! | 10 | 10 | ||
| 9 | 0 secunde | Corect ! | 10 | 10 | ||
| 10 | 0 secunde | Corect ! | 10 | 10 | ||
| Punctaj total | 100 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Verone 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ă.