Cerința
Zoli a primit de la doamna profesoară un șir cu n
elemente, numere naturale. Lui Zoli i se cere să răspundă corect la întrebarea: “Câte numere din șir au în reprezentarea binară doar biți setați – adică au toți biții 1
?
Date de intrare
Fișierul de intrare biti.in
conține pe prima linie numărul n
, iar pe a doua linie n
numere naturale separate prin spații, reprezentând elementele șirului.
Date de ieșire
Fișierul de ieșire biti.out
va conține pe prima linie numărul nr
, reprezentând numărul de elemente ale șirului formate doar din biți setați.
Restricții și precizări
1 ≤ n ≤ 3.000.000
- numerele de pe a doua linie a fișierului de intrare vor fi mai mici decât
2.000.000.000
Exemplu
biti.in
7 24 19 15 81 7 63 100
biti.out
3
Explicație
Numerele care respectă condiția sunt 15
, 7
, 63
.
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema Biti:
#include <cstdio>
using namespace std;
int n;
int x, nr;
int main() {
freopen("biti.in", "r", stdin );
freopen("biti.out", "w", stdout);
scanf("%d", &n);
for ( int i = 0; i < n; ++i ) {
scanf("%d", &x);
if ( !x )
continue;
if ( (x & (x + 1)) == 0 )
nr++;
}
printf("%d\n", nr);
fclose(stdin);
fclose(stdout);
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #1435 Biti
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1435 Biti de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!