Given a value X, the task is to find the number Y which will give maximum value possible when XOR with X.
(Assume X to be 8 bits) Maximum possible value of X and Y is 255.
Examples:
Input: X = 2 Output: 253 Binary Representation of X = 00000010 Binary Representation of Y = 11111101 Maximum XOR value: 11111111 Input: X = 200 Output: 55
Approach: In order to ensure the maximum value of XOR, we need to set all those bits ON which are OFF in X. So for that, Y should have all bits ON which are OFF in X and OFF which are ON in X as (0^1 = 1 and 1^0 = 1). So Y should be the 1’s complement representation of X.
Below is the implementation of the above approach:
C++
// C++ implementation of the above approach #include <bits/stdc++.h> using namespace std; // Function To Calculate Answer int calculate( int X) { // Find number of bits in the given integer int number_of_bits = 8; // XOR the given integer with poe(2, // number_of_bits-1 and print the result return ((1 << number_of_bits) - 1) ^ X; } // Driver Code int main() { int X = 4; cout << "Required Number is : " << calculate(X) << endl; return 0; } |
Java
// Java implementation of the above approach import java.io.*; class GFG { // Function To Calculate Answer static int calculate( int X) { // Find number of bits in the given integer int number_of_bits = 8 ; // XOR the given integer with poe(2, // number_of_bits-1 and print the result return (( 1 << number_of_bits) - 1 ) ^ X; } // Driver Code public static void main (String[] args) { int X = 4 ; System.out.println( "Required Number is : " +calculate(X)); } } // This code is contributed by shs.. |
Python3
# Python3 implementation of the above approach # Function To Calculate Answer def calculate(X): # Find number of bits in the given integer number_of_bits = 8 # XOR the given integer with poe(2, # number_of_bits-1 and print the result return (( 1 << number_of_bits) - 1 ) ^ X # Driver Code if __name__ = = "__main__" : X = 4 print ( "Required Number is:" , calculate(X)) # This code is contributed by Rituraj Jain |
C#
// C# implementation of the above approach using System; class GFG { // Function To Calculate Answer static int calculate( int X) { // Find number of bits in // the given integer int number_of_bits = 8; // XOR the given integer with poe(2, // number_of_bits-1 and print the result return ((1 << number_of_bits) - 1) ^ X; } // Driver Code public static void Main () { int X = 4; Console.WriteLine( "Required Number is : " + calculate(X)); } } // This code is contributed by shs.. |
PHP
<?php // PHP implementation of the // above approach // Function To Calculate Answer function calculate( $X ) { // Find number of bits in // the given integer $number_of_bits = 8; // XOR the given integer with // poe(2, number_of_bits-1 and // print the result return ((1 << $number_of_bits ) - 1) ^ $X ; } // Driver Code $X = 4; echo "Required Number is : " . calculate( $X ) . "\n" ; // This code is contributed // by Akanksha Rai ?> |
Javascript
<script> // Javascript implementation of the above approach // Function To Calculate Answer function calculate(X) { // Find number of bits in the given integer let number_of_bits = 8; // XOR the given integer with poe(2, // number_of_bits-1 and print the result return ((1 << number_of_bits) - 1) ^ X; } // Driver Code let X = 4; document.write( "Required Number is : " + calculate(X) + "<br>" ); </script> |
Required Number is : 251
Time Complexity: O(1)
Auxiliary Space: O(1)
Ready to dive in? Explore our Free Demo Content and join our DSA course, trusted by over 100,000 neveropen!