Problem of the day
X = 1536 and Y = 7, A = 1 and B = 5,
X is base 2 = 11000000000, Y in base 2 = 0111
First, we clear all the birts of X from index 1 to index 5 then wrote Y in X starting from A.
After inserting Y in X starting from position result will be 11000001110
The first line of input contains an integer 'T’ denoting the number of test cases to run. Then the test case follows.
The first and the only line of each test case contain four single space-separated integers ‘X’, ‘Y’, ‘A’, and ‘B’ denoting the integers and the starting and the ending positions for insertion, respectively.
For each test case print the number 'X' after inserting the 'Y' from A’th to B’th position.
Output for each test case is printed in a separate line.
You don’t need to print anything. It has already been taken care of. Just implement the given function.
1 <= T <= 5000
1 <= X,Y <= 2^31
0 <= A <= B < 32
‘X’, ‘Y’, ‘A’, ‘B’ are two given integers and starting bit positions and ending bit position to insert respectively.
It is guaranteed that the position from ‘A’ to ‘B’ is enough to insert Y.
Time Limit : 1 sec
2
1 8 5 15
7 21 11 30
257
43015
X and Y in base 2 are (00001), (01000), after clearing all the bits in X from 5’th to 15’th position and inserting Y we get (1000000001)
X and Y in base 2 are (111), (10101), after clearing all the bits in X from 11’th to 30’th position and inserting Y we get (0001010100000000111)
2
12143435 564 1 10
21321454 129 11 30
12143721
265966