VISA Inc visitó nuestra universidad (NSIT, Delhi) en febrero de 2020 para contratar pasantes.
Ronda 1: Ronda de codificación
La ronda se llevó a cabo en la plataforma de codificación Hackerrank. Fue una prueba de 1,5 horas de duración que constaba de 4 preguntas de codificación. Las preguntas fueron las siguientes:
Q1: le dan una array de n puntos (xi, yi) en el plano, y el problema es devolver la distancia entre el par de puntos más cercano en la array.
Solución: https://www.geeksforgeeks.org/closest-pair-of-points-using-divide-and-conquer-algorithm/
P2: nos dieron una string de n, donde str[i] denota el número binario. Por ejemplo, si str[i]=”3415″, entonces nuestro número binario deducido será: 11101 (establezca los bits en la posición 1, 3, 4 y 5 desde el final, se puede suponer que las posiciones no proporcionadas son cero). El problema era ordenar estas strings en orden creciente de sus números binarios.
Sugerencia: use la función de comparación para ordenar estas strings.
Q3. Era un problema de DP+Greedy. Se proporcionaron máquinas ‘N’ con su ‘eficiencia’ y ‘duración’ y se proporcionó una fórmula que, Mejor ajuste para máquinas ‘K’ = (suma de la eficiencia de las máquinas ‘K’) * (mínimo de duración de las máquinas ‘K’ ). Se dio ‘K’, el problema era seleccionar máquinas ‘K’ de tal manera que ‘Mejor ajuste para máquinas ‘K’ sea el máximo.
P4: se le proporciona una array de procesos y cada proceso tiene ‘id’ y ‘tiempo de ejecución’ del proceso. Se nos pidió que ordenáramos los procesos usando la función de comparación.
Alrededor de 150 estudiantes se sentaron para esta ronda y 16 estudiantes fueron seleccionados para la siguiente ronda.
Ronda 2: Ronda técnica cum HR
El entrevistador me pidió mi CV y luego me pidió que contara más sobre mí. Luego se presentó. Me preguntó sobre lo que me gustaba y lo que no me gustaba. Tenía proyectos de desarrollo front-end, luego me preguntó sobre estos proyectos y cómo usé javascript en ellos.
Como mi rama es la Tecnología de la Información, me preguntó la diferencia entre Informática y TI. Luego me hizo esta pregunta:
Hay ocho monedas de aspecto idéntico; una de estas monedas es falsa y se sabe que es más liviana que las monedas genuinas. ¿Cuál es el número mínimo de pesajes necesarios para identificar la moneda falsa con una balanza de dos platillos sin pesas?
y pidió mi enfoque para resolver esta pregunta. Discutimos esta pregunta durante unos 10 minutos y con diferentes escenarios y si no.
Luego me preguntó cómo le explicaría ‘Qué es la memoria’ a un niño de 5 años. Me preguntó las diferencias entre memoria dinámica y estática y cómo implementar lo mismo en C++. Me preguntó sobre los punteros colgantes y qué es la fuga de memoria y cómo podemos evitarla. Qué son los punteros inteligentes y por qué uno debería usarlos.
También me preguntó acerca de las clases y los objetos y cómo la programación OOPS es diferente del estilo de programación procedimental.
Me hizo algunas preguntas de probabilidad más tarde como ¿cuál es la probabilidad de que uno sea daltónico o no?. Después de eso, me dio una pregunta de codificación que se suponía que debía escribir en un papel. Pregunta: Imprime todos los palíndromos posibles en una string dada. Luego modificó un poco la pregunta y me pidió lo mismo.
Duró entre 40 y 45 minutos, nos dimos la mano y me fui. El resultado del mismo día fue declarado. Se seleccionaron un total de 7 estudiantes y yo fui uno de ellos.