Consider a stack of N number of cards which are piled up and in facing down. Each card has a unique number from the range 1 to N. The card is stacked in such a way that it exhibits the following behavior:
Take the first card and put it under the stack without revealing. Now the next card on the top will have the number 1 on it. Next take 2 cards one after the other and put is under the stack without revealing. Yes you guessed it right - the next card on the top will reveal a value of 2. This goes on.
Eg. for such a series : 9,1,8,5,2,4,7,6,3,10 [for N=10]
Write a program to generate such a series for a given N number of cards so that this behavior can be exercised.
I applied through a recruiter. The process took 2 weeks. I interviewed at Microsoft (Sydney) in May 2013
Interview
First round is phone interview calling from US, lasing for 40 minutes. Second round is the final round. I was heading to their Sydney office. There were 3~4 rounds interviews. Every round is 45 minutes, comprising a programming question. You have to be very careful about the details of each step of your code, especially the boundary case. Questions are all moderate difficulty.
Interview questions [1]
Question 1
I was asked to count from 1 to N among M people in a loop. People counted as N will be removed and keeping counting from 1 to N until only one people left. Output the position of the last people.
I applied through college or university. The process took 2 months. I interviewed at Microsoft
Interview
Got an email inviting me to the first round of the interviews after college career expo. The first round was easy as long as you know your resume and show your ability of being a software developer. After about 3 weeks, they invited me to the final round on-site interview. The questions were not difficult but you have to pay attention to details.