Ronda 1 (ronda de codificación en línea):
esta fue una ronda de 2 horas de duración, que constaba de 4 secciones : Codificación , Cuantificación , Subjetivo y Avanzado .
La sección de Codificación constaba de 2 preguntas.
Pregunta 1: dada una array, comenzando desde el principio de la array hasta su final, cada vez que encuentre el número ‘2’, agregue otro ‘2’ justo después. Al hacerlo, se eliminaría el último elemento de la array, porque la array final debería tener el mismo tamaño que la inicial. Por ejemplo, si la array inicial es [23, 2, 3, 12, 2, 2, 34, 55, 66, 79], entonces la array modificada debe ser [23, 2, 2, 3, 12, 2, 2 , 2, 2, 34]. La complejidad de tiempo esperada es O (n) y debe hacerlo en su lugar (usando solo una cantidad constante de memoria adicional).
Pregunta 2: Hay ‘n’ anuncios. Cada anuncio tiene un valor de efectividad asociado que se proporciona en una array de tamaño ‘n’ en el formato [v1, v2, …, vn], donde ‘v1’ es el valor de efectividad del primer anuncio, ‘v2’ es el valor de efectividad del segundo anuncio, y así sucesivamente. El programa en el que se mostrarán estos anuncios tiene una longitud de ‘m’ (desde 0 hasta m), y el tiempo en que se pueden mostrar los anuncios se da en el formato [(a1, b1), (a2, b2), …, (an, bn)], donde la i -ésima tupla de la array denota el momento de la i -ésimaanuncio en el formato (start_time, end_time). Tenga en cuenta que cualquier ‘ai’ y ‘bi’ no puede ser menor que 0 y no puede ser mayor que ‘m’. Cuando elige mostrar un anuncio, no puede mostrar otro anuncio dentro de los 4 minutos posteriores a su finalización. Entonces, si selecciona mostrar el anuncio con tiempos como (2, 4), entonces no puede mostrar otro anuncio antes de las 9, por lo tanto, el próximo anuncio no puede ser (8, 10), pero puede ser (9, 12). Debe seleccionar los anuncios para mostrar a la audiencia de modo que maximice la suma de los valores de efectividad de los anuncios, dadas las restricciones anteriores. Por ejemplo, si ‘m’ es 20 y los tiempos de los anuncios son [(2, 3), (6, 9), (10, 12), (12, 13), (14, 17)] y el los valores de efectividad son [3, 9, 10, 6, 7], luego puede mostrar el anuncio 2 y el anuncio 5 (indexación basada en uno) y tener un valor de efectividad de 16, que es el máximo que puede obtener dadas las restricciones.
La sección Quant constaba de unas 10 preguntas.
Estas fueron preguntas mixtas sobre probabilidad, arquitectura de computadoras, sistemas operativos, matemáticas de secundaria y matemáticas discretas. Puede esperar cualquier cosa relacionada con Matemáticas e Informática en esta sección.
La sección Subjetiva constaba de 2 preguntas.
Pregunta 1: Tiene sus exámenes finales a partir de la próxima semana, y también tiene su entrevista de la empresa de sus sueños la próxima semana. No puedes asistir a tus exámenes si quieres dar tu entrevista. ¿Qué harías?
Pregunta 2: ve que su presidente filtró los documentos del examen en las redes sociales antes de su comienzo. ¿A qué te dedicas?
La sección avanzada constaba de 1 pregunta.
La extensión de la pregunta era grande. No recuerdo exactamente la pregunta. Pero una vez que entiendes la pregunta, la lógica es muy clara y fácil.
Hice las dos preguntas de la sección de codificación y unas 7 preguntas de la sección cuantitativa y, por supuesto, las dos preguntas de la sección subjetiva. Se convocó a 29 estudiantes para entrevistas, y la mayoría de ellos respondieron las dos preguntas de la sección de codificación.
Los candidatos preseleccionados fueron llamados a entrevistas. Me preguntó por mí. Le di mi presentación y mis intereses. Entonces empezó a hablar de uno de los proyectos que mencioné en mi currículum. Discutimos sobre el proyecto durante unos 20 minutos, y se veía muy contento con las respuestas. Me preguntó acerca de mi estructura de datos favorita. Dije Lista enlazada, Árbol, Arrays. Continuó preguntándome 1 acertijo. https://www.geeksforgeeks.org/puzzle-9-find-the-fastest-3-horses/ . Me hizo 2 preguntas de codificación y escribió el código para ambos en papel.
1). Encuentra maxSumPath en un árbol binario. https://www.geeksforgeeks.org/find-maximum-path-sum-two-leaves-binary-tree/
2). Encuentra el punto fijo en una array. (solución de búsqueda binaria). https://www.geeksforgeeks.org/encontrar-un-punto-fijo-en-una-array-dada/
Todos los acertijos solicitados por el entrevistador a diferentes candidatos estaban disponibles en geeksforgeeks.org .
Estoy muy contento de haber resuelto los acertijos de geeksforgeeks.org . https://www.geeksforgeeks.org/puzzles/
Me llamaron para la segunda ronda de entrevistas. El entrevistador me preguntó cómo fue mi última entrevista. Luego saltó directamente a las preguntas. Me hizo dos preguntas bastante fáciles.
1). El primero fue encontrar un número común en una array ordenada de 3. https://www.geeksforgeeks.org/find-common-elements-three-sorted-arrays/
2). Explicar el análisis amortizado de los algoritmos de clasificación rápida.
También se preguntó un acertijo en esta ronda de entrevistas. https://www.geeksforgeeks.org/puzzle-18-torch-and-bridge/
Me llamaron para la tercera ronda de entrevistas. El entrevistador me preguntó sobre mis prácticas y proyectos de cursos que había mencionado en los currículos. Luego saltó directamente a las preguntas. Me hizo una pregunta de codificación que quería que escribiera código incluyendo todos los casos de esquina.
1). Debe dividir una array de modo que ambos lados contengan elementos de igual suma. Le expliqué la solución dp de abajo hacia arriba y escribí el código y ejecuté en seco los casos de prueba. https://www.geeksforgeeks.org/partition-problem-dp-18/
6 estudiantes fueron seleccionados para el puesto de SDE, y yo era uno de ellos. Le sugiero que repase sus conceptos básicos de codificación y tenga confianza durante el proceso de la entrevista.