# Microsoft IDC Interview Experience (On Campus Internship)

Round 1(Online Test): There were three questions on cocubes:

1. First(2 marks): https://www.geeksforgeeks.org/calculate-the-total-fine-to-be-collected/
2. Second(3 marks): Find the smallest number which when appended to given number will make the resultant number a palindrome.
3. Third(5 marks): https://www.geeksforgeeks.org/remove-bst-keys-outside-the-given-range/
4. 98 people were selected for the next round. All those who had done all 3 questions or (2 questions and a good cg) made it to the next round

Round 2(Group Fly):

They conducted this round in 3 sets . I was in the first set which included 42 students. A common question was written on the board and around 6-7 students were alloted a common mentor.

1. The question was ” given a circular linked list and an integer k, you need to traverse the list till index k (first index is 1) and delete the node at the kth index. Do this repeatedly until only a single node is left and return this node.” We were asked to write  the solution on paper in 45 minutes.What they focussed on was writing clean code and considering all the corner cases .
2. Total 23 students made it to the next round out of 98.

Round 3(Technical Interview):

2. He gave me a Binary Search Tree and a number k and asked me to find the two nodes to get the sum k. He wanted proper written code for this considering all the test cases.Then he asked me to write the code for a Binary Tree instead. He helped me throughout the conversation and was satisfied by my answer.
3. Then he gave me an array and a number k and asked me to find all combinations of numbers in array to get the required sum k. I gave a backtracking approach for this and again he asked me to write proper code for this . After that he asked me to get all combinations of two numbers from the array to get the required sum. I gave a hashing approach and wrote the code for this. Then he asked me to do this without hashing . I gave a two pointers approach for this.

Round 4(Technical Interview):

1. He saw my resume and asked me about my projects, related to big data. I explained him everything I had done . The he asked me to design a big data system to see all the log files generated and figure out the error immediately by seeing the log file generation system. I struggled a lot. I told him my main work was Setting up big data system and i did not know much of system design.
2. Then he moved on to DSA and asked me to move array data from one location to another given only the source and destination pointer. Then he gave me a question ” given stock prices, find the maximum profit that can be made by repeated buying and selling of stocks” . I explained him and he wanted proper code for the same. He gave me enough time to write the code properly. He advised me at the end to focus on all the test cases before i write my code.

Finally, 12 students were selected.

Write your Interview Experience or mail it to contribute@geeksforgeeks.org

My Personal Notes arrow_drop_up

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :
Practice Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.