Solicité una pasantía de verano de dos meses (2021) en codenation. Fue un reclutamiento de pasantías en el campus (universidad de nivel 2).
Hubo 4 rondas, incluida la ronda de codificación en línea.
Ronda de codificación : la prueba se realizó en el rango de piratas informáticos. Constaba de 3 preguntas basadas en DSA. 2 fueron relativamente más fáciles mientras que 1 fue un poco complicado. Algunos estudiantes tenían problemas para compilar
- Elimine k caracteres de la string que consiste en alfabetos ingleses en minúsculas. Entre todas esas strings posibles, devuelva la string que sea lexicográficamente la más grande.
- Problema similar: https://leetcode.com/problems/remove-k-digits/
- Dadas dos arrays de enteros, devuelva el número mínimo de movimientos requeridos de modo que la segunda array sea una subsecuencia de la primera array. Puede insertar un elemento en cualquier índice de la primera array en un solo movimiento. Los elementos de la segunda array son distintos. Ambas arrays pueden tener como máximo 10 ^ 5 elementos.
- Lo resolví almacenando primero el índice de cada elemento de la segunda array en un hashmap. Para cada elemento en la primera array, si también está presente en la segunda array, agregue su índice en la segunda array (usando el hashmap) a otra lista. El LIS de esta lista será la longitud máxima de elementos que podemos emparejar sin realizar ninguna operación. La longitud de la segunda array: LIS fue la respuesta.
- Dada una array de enteros y x consultas de la forma l, r, s, t. La respuesta a cada consulta es el número de subarreglos en el rango [l, r], de tamaño s cuyo bit a bit y (&) es mayor que t. La array puede tener como máximo 10^5 elementos y el número de consultas fue de 500.
- Mantener una suma de prefijo del conteo de todos los bits de 2^0 a 2^30 y luego responder cada consulta usando un enfoque de ventana deslizante funcionó para pasar todos los casos de prueba.
Todos aquellos que resolvieron al menos 2,5 problemas fueron preseleccionados para la siguiente ronda. 5 de los candidatos pasaron a la siguiente ronda.
Ronda 0 : fue una ronda de discusión de proyectos en la que se le preguntará sobre sus proyectos y el trabajo en profundidad. Si está bien versado en sus proyectos, esta es la ronda más fácil de realizar. 2 estudiantes fueron rechazados en esta ronda. Esta ronda se llevó a cabo sobre llamada.
Ronda 1: Fue la ronda DSA donde me pidieron 2 problemas. El entrevistador fue realmente aburrido y poco interactivo. Ni siquiera leyó la pregunta y simplemente pegó el problema en el documento de Google compartido. Esta ronda tuvo lugar en Google Meet y se me pidió que escribiera un código en el documento de Google compartido. (La plataforma también depende del entrevistador, ya que una de las entrevistas de mi amigo se realizó durante una llamada de zoom).
- El primer problema fue que, dada la siguiente función f, tenía que definir otra función que, dado un número n, devolviera sus factores primos junto con sus potencias.
C++
long long f(long long n) { if(n == 1 || n is a prime) { return n; } else { return any of the proper divisors of n; } }
- El segundo problema fue: https://leetcode.com/problems/backspace-string-compare/description/
- Se suponía que debía resolverlo en tiempo lineal y espacio constante.
Pude resolver el primer problema por completo y el segundo problema con la ayuda de algunos consejos. Fui rechazado en esta ronda.
Ronda 2: A algunos de mis amigos que fueron seleccionados para esta ronda se les preguntó sobre sus proyectos y luego se les dio un problema abierto. Esta ronda es para verificar las habilidades de pensamiento creativo del candidato y generalmente la realiza un empleado senior.
En general, fue una buena experiencia de aprendizaje entrevistar con codenation. Solo uno de los estudiantes recibió la oferta final para la pasantía. Después de la preselección de la ronda en línea, todo el proceso tomó de 2 a 3 días.
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