Amazon visitó nuestro campus (Universidad de Jadavpur) para reclutar pasantes y FTE. Estoy compartiendo mi experiencia de entrevista de pasantía.
Hubo 3 rondas en total: 1 ronda en línea seguida de 2 entrevistas presenciales.
Ronda en línea (90 min en Hackerearth):
Hubo 20 preguntas basadas principalmente en C, C++, DS, Razonamiento y algunas de OS, OOPS, DBMS, etc. y 2 preguntas de codificación.
Las 2 preguntas de codificación fueron:
- Encuentre la suma máxima de longitudes de subarreglos contiguos que no se superponen con k como el elemento máximo.
Ex: Array: {2,1,4,9,2,3,8,3,4} and k = 4 Ans: 5 {2,1,4} => Length = 3 {3,4} => Length = 2 So, 3 + 2 = 5 is the answer
Solución : Enlace GeeksforGeeks
- Se le proporciona una array A donde A[i] (indexación basada en 1) denota la cantidad de chocolates correspondientes a cada estación. Cuando nos movemos de la estación i a la estación i+1 obtenemos chocolates A[i] – A[i+1] gratis. Tenga en cuenta que si este número es negativo, perdemos esa cantidad de chocolates. Solo podemos movernos de la estación i a la estación i+1 y eso también si y solo si tenemos un número no negativo de chocolates con nosotros. Dado que el costo de un chocolate es Rs. P , nuestra tarea es encontrar el costo mínimo incurrido para llegar a la estación n desde la primera estación (estación 1).
Ex: A: {1,2,3} and P = 10 Ans: 30 To reach station 1 from the starting station, we need to buy 1 chocolate.To reach station 2 form station 1, we get A[1] – A[2] = -1 chocolates i.e. we lose 1 chocolate. Hence, we need to buy 1 chocolate.Similarly, we need to buy 1 chocolate to reach station 3 from station 2.Hence, total cost incurred = (1+1+1)*10 = 30.
Solución : Enlace GeeksforGeeks
De alrededor de 150 estudiantes, 26 fueron preseleccionados para la Ronda 2.
-> En la primera pregunta, aquellos que usaron cin/cout en lugar de printf/scanf obtuvieron TLE en el 20 % de los casos de prueba.
-> En la segunda pregunta, no se pasó un solo caso de prueba usando int en lugar de long long int. Perdí unos 40 minutos en esto.
->Hacer MCQ era importante. Pocos estudiantes que resolvieron la pregunta de codificación pero no intentaron los MCQ no fueron seleccionados, mientras que algunos que pudieron resolver el 80% de 1 pregunta (8/10 casos de prueba) y pocos MCQ fueron seleccionados.
Ronda 2: Entrevista FTF (alrededor de 30 minutos):
- El entrevistador me dijo que me presentara.
- Cuente todos los Nodes a la distancia k de un Node dado en un árbol binario. Es muy similar a Imprimir Nodes a k distancia de un Node dado .
De repente, salió de la habitación y volvió después de unos 20 minutos. En ese momento se me ocurrió la solución O(n), se la expliqué con un pseudocódigo.
Luego, me preguntó si tenía alguna pregunta para él.
Ronda 3: Entrevista FTF (alrededor de 45 minutos):
Primero, el entrevistador me dijo que me presentara y luego me hizo la pregunta hecha en la 1ra ronda. Luego, me preguntó sobre la creación de subprocesos. Le dije que no había estudiado bien JAVA. A partir de entonces no preguntó nada relacionado con JAVA.
- Búsqueda en array de filas y columnas Empecé con una solución O (RlogC), me dijo que la optimizara, después de un tiempo finalmente le di la solución O (R + C). Me pidió que escribiera el código.
- Viene una secuencia de números enteros que necesita para realizar un seguimiento del mínimo en cualquier momento, ¿qué DS usaría? Le dije que simplemente almacenaría los números en un vector y mantendría una variable min y actualizaría min cuando fuera necesario. Luego me dijo qué pasa si necesitas encontrar el K-ésimo mínimo. Le dije que explicara la pregunta de nuevo, luego preguntó al K-ésimo elemento más grande o más pequeño en una array . Discutimos varios enfoques. Me pidió que codificara el enfoque Max-heap (se permitía el uso de STL). Luego me hizo varias preguntas sobre el montón.
- ¿Cómo representar el montón de manera eficiente? Le dije la representación de la array, luego me pidió que le explicara la que usa punteros. Después de eso, me preguntó cuál es mejor y por qué. Enumeré varias razones, una de las cuales fue que la array es compatible con el caché, ella me pidió que elaborara esto. También me hizo algunas preguntas sobre el caché.
- Me pidió que le explicara la ordenación del montón en detalle.
GeeksforGeeks Link
Lo discutimos durante unos 5 minutos cubriendo todo en detalle. No se requiere código. - Conecte N cuerdas con un costo mínimo Inicialmente, mi enfoque fue incorrecto, mostró un caso en el que falló. Después de un tiempo, le dije que el enfoque O(N*N) era correcto, me pidió que lo optimizara y me dijo que pensara en algún DS que pudiera usar. Finalmente, se me ocurrió la solución usando heap, me preguntó para codificarlo.
Finalmente, me preguntó si tenía alguna pregunta para ella. Mi experiencia de esta ronda fue muy buena, el entrevistador fue muy servicial y amable.
De los 26 seleccionados para las entrevistas, 13 fueron finalmente seleccionados para la pasantía.
Durante mi preparación, geeksforgeeks, de hecho, fue de gran ayuda. Casi todas las preguntas formuladas en la entrevista fueron de geeks. Un gran agradecimiento a otros geeks también por compartir sus experiencias de entrevistas, ya que revisar experiencias pasadas fue la manera perfecta de terminar mis preparativos.
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