Microsoft llegó a nuestro campus el 5 de agosto de 2017.
Ronda 1: fue una ronda de codificación en línea en la que se hicieron 3 preguntas. A las personas con 7+ CGPA se les permitió sentarse. Más de 250+ estudiantes participaron en esta ronda. Las tres preguntas formuladas en mi prueba fueron (cada estudiante recibió diferentes preguntas):
- Encuentre los líderes en una array . Es una pregunta de geeks para geeks. Por favor refierase a eso.
- La segunda pregunta fue encontrar la longitud máxima del sufijo y prefijo común en una string .
- La tercera pregunta fue, se proporcionó un árbol y, junto con los punteros izquierdo y derecho, se proporcionó un siguiente puntero en el que necesitamos conectar el siguiente puntero de cada Node con su hermano derecho. Si un Node no tiene un hermano derecho, haga que el siguiente puntero sea NULL. Se puede resolver usando una cola. Complejidad del tiempo esperado: O(n)
Fue una ronda de codificación de 75 minutos y resolví las tres preguntas en 17 minutos. La única desventaja o considere que como un desafío que Microsoft toma la primera ronda en cocubes donde cuando envía una pregunta, puede ver solo 2 casos de prueba. Así que tienes que cuidar la complejidad del tiempo aquí. Si escribe un código que tiene una complejidad mala, es posible que se ejecute para esos 2 casos de prueba, pero es posible que no se ejecute para otros casos de prueba ocultos. Así que ten cuidado.
Ronda 2: Alrededor de 50 estudiantes fueron preseleccionados y yo fui uno de ellos para la segunda ronda. Luego, Microsoft llegó al campus el 4 de noviembre de 2017. Fue una ronda de vuelo grupal en la que 5-6 estudiantes reciben un mentor y todos los estudiantes reciben 2 preguntas. Necesitamos resolverlos en un bolígrafo de papel en 45 minutos. Aquí, se le pidió que escribiera un código óptimo, explicara el código y escribiera sus casos de prueba. Continúe hablando con el mentor y trate de discutir su enfoque con él. Nuestras preguntas fueron:
- Se dio una ecuación como esta: 27*63 + n Partes + 337/32. Necesitábamos invertirlo y generarlo como 32/337 + n partes + 63*27. Resolví esto en complejidad de tiempo O (n) y complejidad de espacio O (1).
- Esta pregunta fue un poco complicada. Nos dieron una array bidimensional. Puede ir en 4 direcciones: arriba, abajo, derecha e izquierda. Necesitabas encontrar la longitud de la ruta de subsecuencia creciente más larga. Se puede resolver usando DP, pero no pude aplicar DP debido a limitaciones de tiempo, así que lo resolví usando recursividad, pero mi mentor parecía estar de acuerdo.
La pregunta era:[ [9, 9, 4]
[ 8, 1, 8]
[ 5, 4, 9]]
Entonces la respuesta debería ser 4. La ruta más larga es 4->5->8->9.
Ronda 3:
Después de 1 hora, se anunciaron los resultados y fui seleccionado. Se seleccionaron aproximadamente 25 estudiantes para la entrevista y, después de ser seleccionados, mi entrevista comenzó en solo 5 minutos.
Mi entrevistador fue mi mentor durante mi ronda de vuelo grupal. Era una entrevistadora muy tranquila y fría. Comenzó la entrevista pidiéndome que me presentara, luego le conté sobre mis proyectos de aprendizaje automático.
- Después de hablar sobre ML, comenzó a hacer preguntas sobre codificación. Me dijo que como estabas atascado en la segunda pregunta de volar en grupo, te haría una serie de preguntas. Estaba muy feliz por dentro porque lo había preparado muy bien. Entonces, ella me hizo una pregunta muy fácil. Se basó en el Algoritmo de Kadane .
- Primero, le dije que se podía resolver en O(n^3). Luego le dije el enfoque del algoritmo de kadane y le di la solución O(n). Luego me pidió que escribiera un código para ello. Luego me dijo que quería aumentar el nivel de la pregunta, así que me preguntó si me sentía cómoda con ella. Dije que sí y luego me preguntó cómo encontraría la longitud de la substring más larga en una array.
- Nuevamente le di el enfoque O(n^3). Me dijo que lo hiciera en O(n). Así que lo resolví en O(n) usando Programación Dinámica . Luego quiso confundirme preguntándome qué sucede si hay más de 1 substring de longitud máxima, le dije la respuesta. T
- Entonces me preguntó qué hacer si quiero imprimir todas esas substrings. Le di la respuesta. Luego me pidió que lo codificara en papel para bolígrafo. Al final, ella estaba satisfecha.
- Ella me hizo la pregunta final de que si 2 números (dígito por dígito) se almacenan en una lista vinculada en orden inverso, ¿cómo los agregaré y almacenaré en una nueva lista vinculada? Le dije mi respuesta y codifiqué lo mismo.
- Luego me dijo que contara todos los casos de prueba para ello. Le di el máximo de casos de prueba, pero ella esperaba más casos de prueba. Luego ella misma dijo que puede haber un caso de prueba si los números son números de coma flotante. Luego me preguntó si quería hacerle alguna pregunta, le hice 2-3 preguntas y al final quedó satisfecha y me dijo que esperara afuera.
Ronda 4: Justo después de 5 minutos, me llamaron para la segunda entrevista. El entrevistador era un tipo experimentado de 45 a 50 años.
- Comenzó la entrevista haciendo preguntas de recursos humanos como ¿Por qué Microsoft debería seleccionarlo?
- ¿Por qué eres mejor que otras personas? Quedó muy impresionado con mi currículum (después de ver actividades co-circulares).
- Luego, después de 20 a 25 minutos de recursos humanos, comenzó a hacerme una pregunta de codificación.
- La primera pregunta que me hizo fue que hay un flujo infinito de números y tienes que dar la mediana cada vez que se suma un número (la pregunta se puede encontrar en geeks para geeks).
- Primero, le di el enfoque O (nlogn) pero después de pensar por un tiempo, le di el enfoque de tiempo O (logn) usando Heap. Estaba impresionado.
- La siguiente pregunta que hizo fue si te dan un número, digamos 9733, luego tienes que encontrar el siguiente número palíndromo más pequeño, es decir, 9779 (debe ser más grande que 9733 y debería ser más pequeño, como 11111 es más grande que 9733 pero definitivamente 9779 <1111, por lo que debería salir 9779). Yo, en primer lugar, me quedé atascado en esta pregunta, pero luego me dio una pista y pude resolverla. Me pidió que lo codificara. Lo hice.
- Él era muy feliz. Nos dimos la mano y dijo que les diremos los resultados. Me sorprendió porque esperaba 2 entrevistas más.
- Le pregunté que si esa era mi última entrevista, dijo que sí y me dijo que esperara afuera.
Después de 5 minutos, el coordinador de Microsoft me llamó y me dijo que me habían hecho una oferta para Microsoft IDC, Hyderabad y me quedé sin palabras en ese momento :’). El mejor momento de mi vida. Solo quiero darles un consejo a todos ustedes que siguen practicando la codificación en GFG (Hice GFG muy sinceramente desde 2 meses antes de la entrevista) y ahora iré a Hyderabad el próximo año. Gracias GGF 🙂
Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA