VOOZH about

URL: https://www.geeksforgeeks.org/dsa/check-one-numbers-ones-complement/

⇱ Check if one of the numbers is one's complement of the other - GeeksforGeeks


  • Courses
  • Tutorials
  • Interview Prep

Check if one of the numbers is one's complement of the other

Last Updated : 15 Jul, 2022

Given two non-negative integers a and b. The problem is to check if one of the two numbers is 1's complement of the other. 
The ones' complement of a binary number is defined as the value obtained by inverting all the bits in the binary representation of the number (swapping 0s for 1s and vice versa).


Examples: 

Input : a = 10, b = 5
Output : Yes
(10)10 = (1010)2
1's complement of 10 is
= (0101)2 = (101)2 = (5)10

Input : a = 1, b = 14
Output : Yes
(14)10 = (1110)2
1's complement of 14 is
= (0001)2 = (1)2 = (1)10

Approach: Following are the steps: 

  1. Calculate n = a ^ b.
  2. Check whether all bits are set in the binary representation of n. Refer to this post.
     

Output: 

Yes

Time Complexity : O(1)

Auxiliary Space : O(1)


 

Comment
Article Tags: