Piense en una carretera como una recta numérica, que comienza 0y continúa indefinidamente:
.................................................................
Hay dos autos en la carretera: Cy R. Ces el policía que intenta atrapar R, el ladrón. Ccomienza en 0, y Rcomienza en algún lugar del camino:
C.............................R..................................
El policía ya se está moviendo, está persiguiendo al ladrón. Él tiene una velocidad constante. El ladrón saltó a su auto. El esta acelerando. Cada tic, la velocidad del ladrón aumenta con su aceleración.
Digamos que la velocidad del policía es 7y la aceleración del ladrón es 1. Si el ladrón comienza 30, así es como se vería el camino en cada tic:
C.............................R..................................
.......C.......................R.................................
..............C..................R...............................
.....................C..............R............................
............................C...........R........................
...................................C.........R...................
..........................................C........R.............
.................................................C........R......
Después del último tic arriba, la velocidad del ladrón es igual a la del policía, y él todavía está por delante. Como el policía se está moviendo a una velocidad constante y el ladrón todavía se está acelerando, el ladrón escapa, por lo que genera un valor verdadero. Sin embargo, si la velocidad del policía hubiera sido 9...
C.............................R..................................
.........C.....................R.................................
..................C..............R...............................
...........................C........R............................
....................................C...R........................
.............................................X...................
... entonces el policía alcanza al ladrón antes de que el ladrón pueda escapar (marcado por el X), por lo que genera un valor falso.
Tu tarea
Dadas tres entradas: la velocidad del policía, la posición del ladrón y la aceleración del ladrón, determinan si el ladrón se escapará o no.
Reglas
- El policía siempre comienza a las
0. - Todas las entradas serán enteros positivos.
- El policía atrapa al ladrón si, después de cualquier tic, la posición del policía es mayor o igual que la posición del ladrón.
- El ladrón se escapa cuando aún no lo han atrapado y su velocidad es mayor que la del policía.
- Su programa debe terminar después de la salida.
- El ladrón acelera antes de mover cada tic.
Casos de prueba
Cop Speed, Robber Position, Robber Acceleration -> Output
7, 30, 1 -> truthy
9, 30, 1 -> falsey
2, 1, 3 -> truthy
100, 100, 50 -> truthy
60, 60, 20 -> falsey
10, 1, 1 -> falsey
10, 50, 2 -> truthy
11, 50, 2 -> truthy
12, 50, 2 -> truthy
13, 50, 2 -> truthy
14, 50, 2 -> truthy
15, 50, 2 -> truthy
16, 50, 2 -> falsey
17, 50, 2 -> falsey
18, 50, 2 -> falsey
100, 451, 10 -> truthy
Implementación de Python 3 de referencia que también crea un visual: ¡ Pruébelo en línea!
Este es el código de golf , por lo que la respuesta más corta en bytes gana.
robber acceleration, cop speed, robber positionlugar)?