#970
Gen
Pe planeta Marte, marţienii folosesc în calculele aritmetice doar cifrele 0
, 1
, 2
şi 3
. Ei au inventat un nou sistem binar de numeraţie. Pornind de la numărul 23
, ei generează numere binare speciale aplicând de un număr finit de ori regulile din tabelul de mai jos:
2
se poate înlocui cu succesiunea: 12
3
se poate înlocui cu succesiunea: 03
2
se poate înlocui cu succesiunea: 01
3
se poate înlocui cu succesiunea: 10
Marţienii au început să genereze un astfel de număr, aplicând succesiv (în această ordine): de n
ori regula 1); de k
ori regula 2); o singură dată regula 3) şi o singură dată regula 4). Nefiind atenţi, ei nu au reuşit să ducă la capăt generarea şi au nevoie de ajutor. Ajutaţi-i să genereze numărul binar dorit.
Scrieţi un program care citeşte numerele naturale nenule n
şi k
şi care afişează numărul binar obţinut în urma aplicării succesive a regulilor cerute de marţieni.
Olimpiada de Informatică, etapa pe sector, Bucureşti, 2007, clasa a VI-a
Problema | Gen | Operații I/O | tastatură/ecran |
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
Id soluție | #50139914 | Utilizator | |
Fișier | gen.c | Dimensiune | 134 B |
Data încărcării | 28 Martie 2024, 12:38 | Scor / rezultat | Eroare de compilare |
gen.c: In function 'main': gen.c:8:7: error: expected expression before ')' token while(){ ^ gen.c:7:6: warning: ignoring return value of 'scanf', declared with attribute warn_unused_result [-Wunused-result] scanf("%d%d%d",&nr,&n,&k); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Gen 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ă.