# Program to find Reordered Power of 2 in Python

PythonServer Side ProgrammingProgramming

Suppose we have a positive integer N, we reorder the digits in any order (including the original order) such that the leading digit is non-zero. We have to check whether we can do this in a way such that the resulting number is a power of 2.

So, if the input is like N = 812, then the output will be True

To solve this, we will follow these steps −

• i:= 1

• while i<=1000000000, do

• s:= i as a string

• s:= sort characters of s

• t:= n as a string

• t:= sort characters of t

• if s is same as t, then

• return True

• i:= i*2

• return False

## Example

Let us see the following implementation to get better understanding −

def solve(n):
i=1
while i<=1000000000:

s=str(i)
s=''.join(sorted(s))
t=str(n)
t=''.join(sorted(t))
if s==t:
return True

i=i*2

return False

N = 812
print(solve(N))



## Input

812

## Output

True

Published on 06-Oct-2021 11:41:39