sorry ankit... ur solution works only for.. k=1 and n=3...
try for k=2 and n=6.. then the output should be 12...
similarly for k=3 n=1.. the output should be...7...

so plz correct ur code..

On Sun, Jul 10, 2011 at 12:38 PM, ankit sambyal <[email protected]>wrote:

> Here is my approach :
>
> int main()
> {
>    int a=1,k=1,n=3;
>    while(k>1)
>    {
>        k--;
>        a=(a<<1) | 1;
>    }
>    while(n>1)
>    {
>        a=a<<1;
>        n--;
>    }
>    printf("%d",a);
>    return 0;
> }
>
> On Sat, Jul 9, 2011 at 11:14 PM, anurag <[email protected]>
> wrote:
> > You are given two integers n and k
> > k signifies number of set bits i.e. if k = 3 then output should have 3
> > set bits.
> > Output should be the nth smallest number having k set bits
> > for example
> > k=1 and n=3
> > output should be
> > 4 (00000100)
> >
> > --
> > You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> > To post to this group, send email to [email protected].
> > To unsubscribe from this group, send email to
> [email protected].
> > For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
> >
> >
>
> --
> You received this message because you are subscribed to the Google Groups
> "Algorithm Geeks" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to
> [email protected].
> For more options, visit this group at
> http://groups.google.com/group/algogeeks?hl=en.
>
>


-- 
Warm Regards,
Sunny T

-- 
You received this message because you are subscribed to the Google Groups 
"Algorithm Geeks" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/algogeeks?hl=en.

Reply via email to