Given an integer n, find whether it is a power of d or not, where d is itself a power of 2.
Input : n = 256, d = 16 Output : Yes Input : n = 32, d = 16 Output : No
Method 1 Take log of the given number on base d, and if we get an integer then number is power of d.
Method 2 Keep dividing the number by d, i.e, do n = n/d iteratively. In any iteration, if n%d becomes non-zero and n is not 1 then n is not a power of d, otherwise n is a power of d.
A number n is a power of d if following conditions are met.
a) There is only one bit set in the binary representation of n (Note : d is a power of 2)
b) The count of zero bits before the (only) set bit is a multiple of log2(d).
For example: For n = 16 (10000) and d = 4, 16 is a power of 4 because there is only one bit set and count of 0s before the set bit is 4 which is a multiple of log2(4).
64 is a power of 8
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.
- Given a HUGE number check if it's a power of two.
- Check whether a given Number is Power-Isolated or not
- Check if a number is a power of another number
- Check if the number is a Prime power number
- Check if a large number is divisible by a number which is a power of 2
- Find power of power under mod of a prime
- Compute power of power k times % m
- Larger of a^b or b^a (a raised to power b or b raised to power a)
- Find the sum of power of bit count raised to the power B
- Sum of digits of a given number to a given power
- Check if the given array can be reduced to zeros with the given operation performed given number of times
- Check if a number can be expressed as x^y (x raised to power y)
- Check if a number is power of k using base changing method
- Check if a number can be expressed as power | Set 2 (Using Log)
- Check if ceil of number divided by power of two exist in sorted array
- Check if any permutation of a number without any leading zeros is a power of 2 or not
- Check whether all the rotations of a given number is greater than or equal to the given number or not
- Find whether a given number is a power of 4 or not
- Highest power of 2 less than or equal to given number
- Find the super power of a given Number
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.