#2624
invbits
Dat fiind un număr natural n
, să se determine numărul natural m
care are are proprietatea că are în reprezentarea în baza 2
biți de 1
pe pozițiile unde n
are biți de 0
și are biți de 0
pe pozițiile unde n
are biți de 1
. De exemplu, dacă n = 346
, atunci m = 165
, deoarece n
se reprezintă în baza 2
prin 101011010
, iar m
prin 010100101
.
Problema | invbits | Operații I/O | tastatură/ecran |
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 64 MB
/
Stivă 8 MB
|
Id soluție | #30490584 | Utilizator | |
Fișier | invbits.cpp | Dimensiune | 325 B |
Data încărcării | 13 August 2021, 00:14 | Scor / rezultat | Eroare de compilare |
invbits.cpp: In function 'int invertBits(int)': invbits.cpp:7:19: error: 'log2' was not declared in this scope int x = log2(n) ; ^ invbits.cpp:9:15: warning: suggest parentheses around arithmetic in operand of '|' [-Wparentheses] m = m | m - 1; ^ invbits.cpp: In function 'int main()': invbits.cpp:19:5: error: 'cin' was not declared in this scope cin >> number; ^ invbits.cpp:19:5: note: suggested alternative: In file included from invbits.cpp:1:0: /usr/include/c++/4.8/iostream:60:18: note: 'std::cin' extern istream cin; /// Linked to standard input ^ invbits.cpp:21:5: error: 'cout' was not declared in this scope cout << invertBits(number); ^ invbits.cpp:21:5: note: suggested alternative: In file included from invbits.cpp:1:0: /usr/include/c++/4.8/iostream:61:18: note: 'std::cout' extern ostream cout; /// Linked to standard output ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema invbits 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ă.