Advertisement
Guest User

Untitled

a guest
Jan 26th, 2020
131
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.76 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2.  
  3. using namespace std;
  4.  
  5. int main() {
  6. int n, m, nb = 0, mb = 0; // nb = nr de biti n, mb = nr de biti m
  7.  
  8. cin >> n >> m;
  9.  
  10. for(int i = 0; i < 32; i++) {// un numar int este reprezentat pe 32 biti
  11. if(n & (int)pow(2, i)) { // daca am gasit un bit de 1 in reprezentarea binara a lui n incrementam valoarea lui nb
  12. nb++;
  13. } else if(pow(2,i) > n) break; // daca am ajuns la un numar mai mare decat n, e clar ca nu o sa mai gasim biti de 1
  14. }
  15. // acelas lucru pentru m
  16. for(int i = 0; i < 32; i++) {
  17. if(m & (int)pow(2, i)) {
  18. mb++;
  19. } else if(pow(2,i) > m) break;
  20. }
  21. if(nb > mb) {
  22. cout << n;
  23. } else {
  24. cout << m;
  25. }
  26. return 0;
  27. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement