Simple implementation with using any library functions


#1

int Solution::power(string A) {
int check=1,n=A.length(),count=0;
while(check==1)
{
if(A[n-1]%2!=0)
{
if(A[n-1]!=‘1’)
return 0;
else
{
for(int i=n-2;i>=0;i–)
{
if(A[i]!=‘0’)
return 0;
}
if(count==0)
return 0;
else
return 1;
}
}
else
{int carry=0;
for(int i=0;i<n;i++)
{
char a=A[i];
A[i]=((carry+A[i]-48)/2)+‘0’;
carry=((carry+a-48)%2)*10;
// cout<<A[i];
}
// cout<<"\n";
}
count++;
}
}