#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 |
![]() |
---|---|---|---|
Limita timp | 1 secunde | Limita memorie |
Total: 2 MB
/
Stivă 1 MB
|
Id soluție | #50896654 | Utilizator | |
Fișier | gen.cpp | Dimensiune | 222 B |
Data încărcării | 13 Mai 2024, 11:11 | Scor / rezultat | Eroare de compilare |
gen.cpp:6:14: error: expected '}' before ';' token cin>>n>>k; ^ gen.cpp:6:11: error: invalid user-defined conversion from 'std::basic_istream<char>::__istream_type {aka std::basic_istream<char>}' to 'int' [-fpermissive] cin>>n>>k; ^ In file included from /usr/include/c++/4.8/ios:44:0, from /usr/include/c++/4.8/ostream:38, from /usr/include/c++/4.8/iostream:39, from gen.cpp:1: /usr/include/c++/4.8/bits/basic_ios.h:115:7: note: candidate is: std::basic_ios<_CharT, _Traits>::operator void*() const [with _CharT = char; _Traits = std::char_traits<char>] <near match> operator void*() const ^ /usr/include/c++/4.8/bits/basic_ios.h:115:7: note: no known conversion for implicit 'this' parameter from 'void*' to 'int' gen.cpp:7:5: error: expected unqualified-id before 'for' for(int i=1;i<=n;i++) ^ gen.cpp:7:17: error: 'i' does not name a type for(int i=1;i<=n;i++) ^ gen.cpp:7:22: error: 'i' does not name a type for(int i=1;i<=n;i++) ^ gen.cpp:9:5: error: 'cout' does not name a type cout <<"01"; ^ gen.cpp:10:5: error: expected unqualified-id before 'for' for(int i=1;i<=k;i++) ^ gen.cpp:10:17: error: 'i' does not name a type for(int i=1;i<=k;i++) ^ gen.cpp:10:22: error: 'i' does not name a type for(int i=1;i<=k;i++) ^ gen.cpp:12:5: error: 'cout' does not name a type cout<<10; ^ gen.cpp:13:5: error: expected unqualified-id before 'return' return 0; ^ gen.cpp:14:1: error: expected declaration before '}' token } ^
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ă.