U can use single walker (from 0 till 31) to convert integers N and M into
array of bits, then
another walker from i to j to replace values.
for(k=31;k>=0;k++)
{
N[k]=n & 01;
M[k]=m &01;
n>>=1;
m>>=1;
}
for(k=i;k<=j;k++)
N[k]=M[k];
On Tue, Sep 20, 2011 at 12:44 PM, abhinav gupta
<[email protected]>wrote:
> I can tell you the logic.Take two arrays N and M, put their bits in
> the array.
> Now using i and j index replace the value of N[j] to n[i] by M[j] to M[i].
> On Tue, Sep 20, 2011 at 12:33 PM, Ishan Aggarwal <
> [email protected]> wrote:
>
>> You are given two 32-bit numbers, N and M, and two bit positions, i and
>> j.Write a method to set all bits between i and j in N equal to M (e.g., M
>> becomes a substring of N located at i and starting at j).
>>
>> EXAMPLE:
>>
>> Input: N = 10000000000, M = 10101, i = 2, j = 6
>>
>> Output: N = 10001010100
>>
>> --
>> Kind Regards
>> Ishan Aggarwal
>> [image: Aricent Group]
>> Presidency Tower-A, M.G.Road,Sector-14
>> Gurgaon,Haryana.122015 INDIA
>> Phone : +91-9654602663
>> [email protected] <[email protected]>
>>
>> --
>> 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.
>>
>
>
>
> --
> @ |3 # ! /\/ @ \./
>
--
@ |3 # ! /\/ @ \./
--
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.