Todo el proceso consistió en 5 rondas: 1 codificación en línea, 1 depuración, 2 técnicas y 1 ronda de diseño de sistemas/RRHH.
El criterio mínimo para la prueba en línea se estableció en más de 8.5 CGPA, por lo que de un lote de 450 estudiantes en algún lugar cerca de 80-90 estudiantes calificaron para la prueba.
Hubo 2 preguntas en la prueba en línea:
P.1: dado un árbol n-ario y algunas consultas para el árbol, en cada consulta se le dará un Node que se supone que debe imprimir en orden anticipado transversal del subárbol enraizado en ese Node .
Los casos de prueba fueron tan buenos que debe almacenar previamente el recorrido para cada Node antes de procesar las consultas y este almacenamiento previo también debe realizarse en solo 1 recorrido de árbol.
P.2: Una ciudad se representa como un gráfico con cruces en V y carreteras en E que los conectan. Hay dos cruces especiales; 1 es la oficina y 1 es la casa. Una señora sale de la oficina y quiere ir a la casa de la siguiente manera:
Primero seleccionará racionalmente un camino que sale del cruce actual y caminará por él. Si ha llegado a la casa, entonces la tarea está terminada; de lo contrario, seleccionará al azar otro camino (no el de donde vino a este cruce) y caminará por él.
Todo el proceso anterior consiste en un movimiento. Se supone que debe responder si la dama podrá llegar a la casa alguna vez usando alguna estrategia para elegir el camino racional en cada paso y si puede llegar a la casa, ¿cuál será el número mínimo de movimientos con la mejor estrategia?
Pude hacer la primera pregunta por completo y 8 casos de prueba para la segunda pregunta.
16 personas fueron seleccionadas después de esta ronda.
En la ronda de depuración, había dos preguntas escritas en el papel: se suponía que todos íbamos a encontrar tantos errores en el programa como pudiéramos. El código 1 estaba en C para implementar una lista enlazada doblemente circular y dividir una lista en dos mitades. El segundo código estaba en Java implementando la sincronización mientras leía de múltiples archivos usando múltiples subprocesos y escribía en un solo archivo.
6 personas fueron seleccionadas después de esta ronda.
En ambas rondas técnicas seguidas se dejó claro que solo se dará una pregunta que hay que resolver en 45 minutos. Si puede resolver la pregunta correctamente, habrá más preguntas en esa ronda en particular; de lo contrario, estará fuera del proceso.
Pregunta de la primera ronda técnica: de (1, 1) se supone que debes ir a (n, m) (1 <= n, m <= 10^7) en una array. Imprime la ruta mínima si existe. Los movimientos permitidos desde un Node (x, y) son (x, x+y) o (x+y, y).
Primero sugerí el enfoque DP y BFS, pero no eran lo suficientemente buenos debido a la restricción, así que se me ocurrió el enfoque en el que pasaría del objetivo a (1, 1) si actualmente estoy en (x, y), entonces mi Node anterior en la ruta habría sido (x, xy) si x es el máximo de lo contrario (yx, y). De esta manera, si alguna vez encuentro 1 en x o en y, imprimiré el resto de la ruta; si no, entonces no hay ruta. La complejidad del tiempo para este algoritmo será O(max(n, m)).
Segunda Ronda Técnica Pregunta: Dada una array, se supone que debes encontrar el reinado de cada elemento. El reinado de un elemento es el rango continuo en la array que contiene el elemento en el que es máximo.
Por ejemplo: 8 9 5 4 2 6 7 1 5
Reinado para:
8: 1 1
9: 1 9
5: 3 5
4: 4 5
2: 5 5
6: 3 6
7: 3 9
1: 8 8
5: 8 9
Pude resolver la pregunta utilizando el enfoque de pila en 20 minutos.
Como mencioné anteriormente, ambas rondas técnicas fueron de exactamente 45 minutos, por lo que después de resolver las preguntas hubo una entrevista bidireccional en la que el entrevistador y yo hablamos sobre varios temas, como mis proyectos, sobre la empresa y el trabajo, algunas tecnologías y algoritmos, etc. Estas sesiones fueron geniales porque no parecían entrevistas, sino que era más como hablar con un amigo sobre varias cosas. Realmente disfruté este proceso.
Después de las rondas técnicas, se seleccionaron 5 personas para la última ronda. 2 fueron convocados para la ronda de diseño del sistema y 3 fueron convocados para la ronda de recursos humanos. En la ronda de diseño del sistema, se le pidió a 1 persona que implementara el tipo de plataforma de Instagram y la pregunta de otra era algo relacionado con las bases de datos que no recuerdo exactamente.
En la ronda de recursos humanos para mí, hubo una discusión sobre mis proyectos. Se suponía que debía explicarle mi proyecto de una manera que él pudiera entender, ya que no tenía conocimientos técnicos. Una vez más, esta fue una ronda interactiva con preguntas que iban desde mis intereses hasta mi preferencia de ubicación, etc.
Después de la última ronda, se seleccionó a personas de RR.
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