Soy Ingeniero de Software con más de 2 años de experiencia. Tuve una ronda de Zoho fuera del campus. Me rechazaron en la tercera ronda de diseño orientado a objetos.
Nivel 1: El nivel consta de 10 preguntas de programación y 10 preguntas de aptitud.
1. ¿Cuál es la salida?
C
void func(int *b) { *b = 1; } int main(){ int *a; int n; a = &n; *a=0; func(a); std::cout << *a << std::end; return 0; }
2. ¿Cuál es la salida?
C
int main(){ int x=10; int y=20; if(!(x^y)) printf("0"); else printf("1"); return 0; }
3. ¿Cuál es la salida?
C
int main(){ int a[10][10]={{1,2},{3,4},{5,6},{7,8},{9,10}}; int *p=3; int result = a[2][1]+ (*p--)+(++*p)+(*p+13); printf("%d",result); return 0; }
4. ¿Cuál es la salida?
C
#include<stdio.h> int main(){ int i; char ch[]={'z','o','h','o'}; char *ptr,*str1; ptr=ch; sr1=ch; i =(*ptr-- + ++*str1)-10; return 0; }
5. ¿Cuál es la salida?
C++
void main(){ int n=21; int out = 1; while(n>=3){ n/=2; out*=(n/2); } printf("%d",n*out); }
6. ¿Cuál es la salida?
C
#include <stdio.h> void function(char**); int main(){ char *arr[] = {"ant","bat","cat","dog","egg","fly"}; function(arr); return 0; } void function(char **ptr){ char *ptr1; ptr1 = (ptr + = sizeof(int))[-2]; printf("%s\n",ptr1); }
7. ¿Cuál es la salida?
C++
#include<iostream> using namespace std; class Test{ static int i; int j; }; int Test :: i; int main(){ count << sizeof(Test); return 0; }
8. ¿Cuál es la salida?
C
int main(){ int a[10][10] = {{1,2},{3,4},{5,6},{7,8},{9,10}}; int *p = a[3]; int result = (*p+2)*a[4][1]+(++*p)+(*p+7); printf("%d",result); return 0; }
9. ¿Cuál es la salida?
C
int a=20; int main(){ int a=10; std::cout << a << ""<<::a; return 0; }
10. ¿Cuál es la salida?
C
int main() { int n[]={8,1,3,9,4}; int j,*y=n; for(j=0;j<5;j++) { if(j%2==0) *y++; } printf("%d",*y); return 0; }
La sección 2 consta de 10 preguntas.
- El precio de 2 manzanas y 4 naranjas es de 160 rupias. Con el mismo dinero se pueden comprar 1 manzana y 6 naranjas. ¿Cuál es el precio de 3 naranjas?
- Anirudh quiere cortar una tabla rectangular grande en pequeños pedazos cuadrados idénticos. Si el tamaño del tablero es de 18 pulgadas por 30 pulgadas. ¿Cuál es el menor número de piezas cuadradas que puede cortar sin desperdiciar nada del tablero?
- En una fiesta, todas las personas se dan la mano con todas las demás. Si hay 105 apretones de manos, encuentra el número de personas en la fiesta.
- A inició un negocio con la cantidad de Rs. 40000. Después de 5 meses, A retira Rs 20000. B invierte todos los meses con regularidad. La razón de participación en las utilidades entre A y B al final del año es 10239. ¿Encuentre cuánto invirtió B cada mes?
- la diferencia entre un número de dos dígitos y el número obtenido al intercambiar la posición de sus dígitos es 18. ¿Cuál es la diferencia entre los dos dígitos del número?
- El precio de 2 manzanas y 4 naranjas es Rs. 160. Con el mismo dinero se puede comprar 1 manzana y 6 naranjas. ¿Cuál es el precio de 3 naranjas?
- Una clase tiene 6 niños y 7 niñas. de ellos, tienen que seleccionar un grupo de 6 estudiantes para realizar un mimo, por lo que el grupo seleccionado debe tener al menos 4 niñas.
- Si todos en un grupo contribuyeron para la recaudación de fondos y cada uno pagó al menos Rs. 140 y la cantidad total recaudada es de 2370, lo que podría ser la fuerza máxima posible de ese grupo.
- Encuentra el dígito de la unidad en el producto 24647^117 y 45639^118.
- Si A(x) denota el número de números primos no mayor que x. entonces cuál es el valor de A(A(100)).
Tienes que obtener una puntuación del 100 % para superar este nivel L1 de la ronda de Zoho. Me seleccionaron en esta ronda y, a los pocos días, recibí una llamada de Recursos Humanos sobre el nivel L2 de la ronda de Zoho.
El nivel L2 de la ronda de Zoho involucra la ronda de DataStructure y Algorithms.
1. Escriba una función para encontrar la string de prefijo común más larga entre una array de strings. Si no hay un prefijo común, devuelve una string vacía.
Ejemplo 1 :
Input : strs = ["flower","flow","flight"] output : "fl"
Ejemplo 2:
Input : strs = ["dog","racecar","car"] output : ""
2. Un árbol pasa por dos ciclos de crecimiento cada año, verano y primavera. Cada primavera, duplica su altura. Cada verano, su altura aumenta por metro. Dado un muestreo, que se plante a una altura de 1 metro durante la primavera. Calcular la altura después de n ciclos.
Ejemplo 1:
Input : 0 Output:1
Ejemplo 2:
Input: 1 Output 2
Ejemplo 3:
Input 4 Output:7
https://hackerranksolution.in/utopiantreealgo/
3. Se le da una array de precios donde precios[i] es el precio de una acción determinada en un i-ésimo día. Desea maximizar sus ganancias eligiendo un solo día para comprar una acción y eligiendo un día diferente en el futuro para vender esa acción. Devuelva la máxima ganancia que pueda obtener de esta transacción. Si no puede obtener ningún beneficio, devuelva 0
Ejemplo 1:
Input : prices =[7,1,5,3,6,4] output: 5
Explicación: compre el día 2 (precio = 1) y venda el día 5 (precio = 6), beneficio = 6-1 = 5
Tenga en cuenta que no se permite comprar el día 2 y vender el día 1 porque debe comprar antes de vender.
Ejemplo 2:
input : prices = [7,6,4,3,1] output : 0
Explicación: En este caso, no se realizan transacciones y la ganancia máxima = 0
algo similar a este artículo: https://www.geeksforgeeks.org/stock-buy-sell/
Ronda de nivel L3: L3 es una ronda de diseño orientada a objetos. Fui rechazado en esta ronda, intente completar todas las tareas en 3 horas, de lo contrario, no será preseleccionado.
Cree una aplicación de reserva de Bus, ZOBUS, que cumpla con las siguientes condiciones:
Tarea 1: inicialización
Inicialice los datos según los detalles que se dan a continuación para que se carguen cuando se inicie el programa:
se puede cargar y guardar en la memoria. No es necesario mantener un archivo o base de datos.
Suponga que este autobús está disponible solo para una sola ruta (Chennai a Bangalore).
Y que todos los pasajeros quieran viajar el mismo día.
Un cliente puede reservar solo 1 boleto.
2 autobuses cama: 1 con aire acondicionado y 1 sin aire acondicionado
Autobuses de 2 plazas: 1 CA y 1 sin CA.
El autobús de plazas tiene 12 asientos (1, 2, 3, 4: representan la fila donde las personas pueden sentarse. Se deja un espacio en el medio porque es un área para caminar).
A | B | C | |
---|---|---|---|
1 | |||
2 | |||
3 | |||
4 |
Sleeper Bus tiene 12 asientos en 2 cubiertas (6 cada uno)
(Cubierta inferior)
A | B | |
---|---|---|
1 | ||
2 | ||
3 |
(Cubierta alta)
A | B | |
---|---|---|
4 | ||
5 | ||
6 |
Clientes iniciales
Identificación | Nombre | Clave | Años | Género |
---|---|---|---|---|
1 | aaa | 111 | 25 | F |
2 | bbb | 222 | 61 | METRO |
3 | ccc | 333 | 22 | METRO |
4 | ddd | 444 | 36 | F |
Tarea 2: Registro del cliente: el cliente debe tener la opción de registrarse con una nueva cuenta al proporcionar todos los detalles básicos.
Tarea 3: Inicio de sesión del cliente: el cliente debe poder iniciar sesión con las credenciales de su cuenta existente (nombre de usuario y contraseña)
Tarea 4: Reservar un boleto
4.1 Opciones de autobús
Se le debe preguntar al cliente el número de pasajeros. Se deben mostrar todos los buses con la capacidad restante.
Salida de muestra:
- Coche cama AC – 12 asientos
- Asientos AC – 9 Asientos
- Dormitorio sin aire acondicionado – 4 asientos
- Asientos sin aire acondicionado: 10 asientos
4.2 Selección de Asiento: Una vez elegido el bus requerido por el cliente, se le debe mostrar el estado actual del bus en que asientos se encuentran ocupados y cuales se encuentran vacantes.
Y el cliente puede elegir sus asientos en base a las siguientes reglas:
- Él / ella debe ingresar el número de viajeros no mayor que los asientos restantes). Debe obtener el nombre y el sexo de los compañeros de viaje.
- Él / Ella puede elegir los asientos de tal manera que solo una dama pueda ocupar el asiento al lado de una dama del boleto diferente.
- Una dama y un caballero pueden ocupar asientos contiguos si son del mismo boleto.
Salida de muestra
A | B | C | |
---|---|---|---|
1 | |||
2 | F | ||
3 | METRO | ||
4 | METRO |
Si B2 es una dama, el asiento B1 solo puede ser ocupado por otra dama. Del mismo modo para el durmiente. Mientras que si viajan 2 personas. 1 macho y 1 hembra. Pueden ocupar los asientos A1 y A2.
Tarea 5: Cálculo de la tarifa: la tarifa debe calcularse e informarse al cliente de la siguiente manera:
- AC+ Sleeper – Rs 700 / asiento
- AC+ Seater – Rs 550 / asiento
- Sin aire acondicionado + dormitorio: 600 rupias por asiento
- No AC+ Seater – Rs 450 / asiento
Tarea 6: Confirmación del billete: Una vez estimada la tarifa, se debe solicitar al cliente la confirmación de la reserva. Solo si confirma, se debe reservar el billete.
Tarea 7 Cancelación de boletos: El cliente debe tener la opción de cancelar su boleto según el siguiente flujo de trabajo:
- Debe mostrar la lista de asientos reservados por él.
- Puede tener la opción de cancelar completamente (todos los asientos) o cancelar parcialmente (asientos seleccionados)
- Tarifa de cancelación del 50 % para asientos con aire acondicionado y del 25 % para asientos sin aire acondicionado.
Tarea 8: Filtrado de autobuses: el cliente puede filtrar y ver los autobuses según su preferencia entre los siguientes:
- CA o no CA o ambos
- Seater o Sleeper o Ambos
Solo se deben mostrar los autobuses correspondientes que no estén llenos.
- En orden descendente de capacidad restante.
- Si la CA de la misma capacidad debe venir primero.
- Si la misma capacidad Sleeper debe venir primero.
Salida de muestra:
- Asientos AC – 12 Asientos
- AC Sleeper – 11 asientos
- Dormitorio sin aire acondicionado: 11 asientos
- Asientos sin aire acondicionado: 11 asientos
Tarea 9: Resumen de autobuses: el administrador debería poder ver el resumen de los autobuses de la siguiente manera:
Tipo de autobús, número de asientos ocupados, tarifa total cobrada y detalles de cada asiento ocupado.
Salida de muestra:
- Dormitorio con aire acondicionado
- Número de asientos ocupados: 4
Tarifa total cobrada: 3510 (4 asientos + 1 cancelación)
Detalles del asiento:
Asiento | Nombre | Género |
---|---|---|
A3 | ccc | METRO |
B6 | aaa | F |
A4 | ddd | F |
A5 | daa | F |
Fui rechazado después de esta ronda, aunque hice mi mejor esfuerzo, tal vez no era tan bueno. Mejor suerte la próxima vez .
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