**Microsoft | Internship | OFF CAMPUS**

Microsoft conducted an all India drive for hiring SDE Interns(Minimum CGPA was 7 and no backlogs were allowed). They conducted a coding round in which people who solved 3 got a call or people who solved 2 and had a higher CGPA(+9) also received a call. Girls solving one problem were called for an on site interview.

**Round 1 :- Coding Round.**

- Problem 1
** - **Distribute N candies among K people
- Problem 2 -
** **Minimum steps required to convert X to Y where a binary matrix represents the possible conversions.
- Problem 3 - Minimum number of sets with numbers less than Y.

**Round 2 :- 60 min.**

- Problem 1 - Find the Lowest Common Ancestor in a Binary Tree.
- Problem 2 - Given a matrix, find and print the maximum path sum from 0, 0 to n-1, m-1.

** People solving both the problems and girls solving the first one completely and printing the maximum path sum for the second were taken to the next round. There would be 25 people who made it.

**Round 3 :- **

It was a personal interview which was taken by two interviewers. They were really nice and gave me a lot of time to discuss. We had a long discussion on the ML projects that I did. They asked me about the algorithms used and the libraries and the functions in depth. They also asked me how I could do the same without functions and other stuff. It went for around 30 minutes.

The next 15 minutes had a problem discussion in which I was asked to find the K-th largest element in the array. I gave a solution using set since they initially said that it contained unique elements, as soon as they said it has duplicate elements, I switched to priority queue. They later asked me to implement set or priority queue, which I was unable to do.

After lunch, they informed me that I made it to the third round. Around 10 made it to the next round.

**Round 4 :- **

The interviewer was of young age and seemed to be nice from the beginning. He asked me initially on my low semester marks, and they gave me an option to choose from DSA or Software Engineering or Architecture, on which I choose DSA.

He gave me 3 questions during this course which I solved successfully.

1. Find the minimum element in a rotated sorted array. I solved and coded the same using binary search, he just asked me to add a case for n==0 which I missed.

2. Sort an array of 0’s and 1’s without sorting and minimum number of lines of code.

3. Detect a loop in the linked list. He just asked the approach and asked me to not write the code.

After that he asked me whether I would be able to answer real life problems using DSA. Then he asked me to implement a dictionary, on which I gave a trie solution, he was impressed with the answer, and asked me about search engine optimizations and DSA application on the search engines while predicting texts in the search box. We had a light chat after this for 2 to 3 minutes, in which he seemed to be impressed.

After an hour, they took our CV and selected 4 out of the 10 who were there. I went personally to the recruiter over there to know the reason for the rejection. He asked my name and after cross checking, mentioned that, since everyone was good, they were left with nothing but to choose on CGPA. I sadly had a low CGPA of 7.33 which turned out to be a curse.

**Status :- Rejected**