La solución será evaluada en los siguientes parámetros.
Diseño Orientado a Objetos aspectos de la solución.
Prácticas generales de codificación.
Casos de prueba de trabajo de la solución.
Puede usar Ant/Maven como herramientas de compilación para la solución, Junit, Mockito u otros marcos de prueba.
También puede incluir una breve explicación de su diseño y suposiciones junto con su código.
Declaración del problema: en un desafío de Fórmula 1, hay n equipos numerados del 1 al n. Cada equipo tiene un coche y un conductor. Las especificaciones del automóvil son las siguientes:
– Velocidad máxima: (150 + 10 * i) km por hora
– Aceleración: (2 * i) metros por segundo cuadrado.
– Factor de manejo (hf) = 0,8
– Nitro: aumenta la velocidad al doble o la velocidad máxima, la que sea menor. Se puede usar una sola vez.
Aquí está el número del equipo.
Los autos se alinean para la carrera. La línea de salida para (i + 1)-ésimo auto está 200 * i metros detrás del i-ésimo auto.
Todos ellos comienzan al mismo tiempo e intentan alcanzar su velocidad máxima. Se realiza una nueva evaluación de las posiciones cada 2 segundos (por lo que incluso si el automóvil ha cruzado la línea de meta en el medio, lo sabrá después de 2 segundos). Durante esta evaluación, cada conductor verifica si hay algún automóvil a menos de 10 metros de su automóvil, su velocidad se reduce a: hf * (velocidad en ese momento). Además, si el piloto nota que es el último en la carrera, utiliza ‘nitro’.
Tomando como entrada el número de equipos y la longitud de la pista, calcule las velocidades finales y los tiempos de finalización correspondientes.
Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo y enviarlo por correo electrónico a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
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