unsigned
int
NDivide3(unsigned
int
n)
{
unsigned int ans=0,i,b;
while(n>3){
b=n>>2;
ans+=b;
n=n^3+b;
}
if(3==n) return ++ans;
else return ans;
}
unsigned int ans=0,i,b;
while(n>3){
b=n>>2;
ans+=b;
n=n^3+b;
}
if(3==n) return ++ans;
else return ans;
}