A number N is given. We need to print its ‘K’th Least Significant Bit.
Examples :
Input : num = 10, k = 4 Output : 1 Explanation : Binary Representation of 10 is 1010. 4th LSB is 1. Input : num = 16, k = 3 Output : 0 Explanation : Binary Representation of 16 is 10000. 3rd LSB is 0.
We can easily solve this problem by following steps :
- Shift the number ‘1’ (K-1) times left.
- This will yield a number with all unset bits but the ‘K’th bit. Now, we’ll perform logical AND of the shifted number with given number.
- All bits except the ‘K’th bit will yield 0, and ‘K’th bit will depend on the number. This is because, 1 AND 1 is 1. 0 AND 1 is 0.
C++
// CPP code to print 'K'th LSB #include <bits/stdc++.h> using namespace std;
//Function returns 1 if set, 0 if not bool LSB( int num, int K)
{ return (num & (1 << (K-1)));
} //Driver code int main()
{ int num = 10, K = 4;
//Function call
cout << LSB(num, K);
return 0;
} |
java
// java code to print 'K'th LSB import java .io.*;
class GFG {
// Function returns 1 if set, 0 if not
static boolean LSB( int num, int K)
{
boolean x = (num & ( 1 << (K- 1 ))) != 0 ;
return (x);
}
// Driver code
public static void main(String[] args)
{
int num = 10 , K = 4 ;
//Function call
if (LSB(num, K))
System.out.println( "1" ) ;
else
System.out.println( "0" );
}
} // This code is contributed by Anuj_67 |
Python3
# Python code to print 'K'th LSB # Function returns 1 if set, 0 if not def LSB(num, K):
return bool (num & ( 1 << (K - 1 ) ))
# Driver code num, k = 10 , 4
res = LSB(num, k)
if res :
print ( 1 )
else :
print ( 0 )
#This code is contributed by Sachin Bisht |
C#
// C# code to print 'K'th LSB using System;
class GFG {
// Function returns 1 if set, 0 if not
static bool LSB( int num, int K)
{
bool x = (num & (1 << (K-1))) != 0;
return (x);
}
// Driver code
static void Main()
{
int num = 10, K = 4;
//Function call
if (LSB(num, K))
Console.Write( "1" ) ;
else
Console.Write( "0" );
}
} // This code is contributed by Anuj_67 |
PHP
<?php // PHP code to print 'K'th LSB // Function returns 1 if set, 0 if not function LSB( $num , $K )
{ return ( $num & (1 << ( $K - 1)));
} // Driver code $num = 10;
$K = 4;
$r = LSB( $num , $K );
if ( $r )
echo '1' ;
else echo '0' ;
// This code is contributed by Ajit ?> |
Javascript
<script> // Javascript code to print 'K'th LSB
// Function returns 1 if set, 0 if not
function LSB(num, K)
{
let x = (num & (1 << (K-1))) != 0;
return (x);
}
let num = 10, K = 4;
//Function call
if (LSB(num, K))
document.write( "1" ) ;
else
document.write( "0" );
</script> |
Output :
1
Time Complexity: O(1)
Auxiliary Space: O(1)
Recommended Articles