Descripción
Se le dan los resultados de una función de rango donde cada elemento se ha redondeado al número entero más cercano. Su objetivo es recuperar la lista original.
Por ejemplo, la siguiente función (en Python3) producirá una entrada para su programa:
from numpy import arange, floor
def floored_range(A, B, C):
return list(floor(arange(A, B, C)))
La salida de su programa debe ser una suposición válida de los datos originales. Aquí, una suposición válida significa que debe coincidir exactamente con la entrada cuando está en el piso y debe ser una salida posible de una función de rango (es decir, cuando se grafica debe formar una línea perfectamente recta).
Ejemplos
Input: [1,2,3,4]
Output: [1,2,3,4]
Input: [1,2,3,4]
Output: [1.9,2.7,3.5,4.3]
Input: [1,2,3,4,5,5]
Output: [1.9,2.7,3.5,4.3,5.1,5.9]
Input: [1,1,2,2,3,3,4,4]
Output: [1,1.5,2,2.5,3,3.5,4,4.5]
Input: [1,1,2,3,3,4]
Output: [1,1.7,2.4,3.1,3.8,4.5]
Input: [56, 54, 52, 50, 48, 45, 43, 41, 39, 37, 35, 32, 30, 28, 26, 24, 22, 19, 17, 15, 13, 11]
Output: [56.7 , 54.541, 52.382, 50.223, 48.064, 45.905, 43.746, 41.587,
39.428, 37.269, 35.11 , 32.951, 30.792, 28.633, 26.474, 24.315,
22.156, 19.997, 17.838, 15.679, 13.52 , 11.361]
A, B, Cpuede haber tres flotadores. El rango de entrada del piso puede, por ejemplo, comenzar en 56.7, finalizar en 10.2y tener un tamaño de paso de -2.159. Lo único que importa es que los puntos de salida, cuando están en el piso, coinciden exactamente con la entrada. He agregado un ejemplo que muestra eso.