Sự miêu tả
Bạn được cung cấp kết quả của một hàm phạm vi trong đó mọi phần tử đã được làm tròn xuống đến số nguyên gần nhất. Mục tiêu của bạn là để phục hồi danh sách ban đầu.
Ví dụ: hàm sau (trong Python3) sẽ tạo đầu vào cho chương trình của bạn:
from numpy import arange, floor
def floored_range(A, B, C):
return list(floor(arange(A, B, C)))
Đầu ra của chương trình của bạn phải là một phỏng đoán hợp lệ của dữ liệu gốc. Ở đây, đoán hợp lệ có nghĩa là nó phải khớp chính xác với đầu vào khi được thả nổi và nó phải là đầu ra khả dĩ của hàm phạm vi (nghĩa là khi được vẽ biểu đồ, nó phải tạo thành một đường thẳng hoàn hảo).
Ví dụ
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, Ccó thể là bất kỳ ba phao. Ví dụ, phạm vi thả nổi có thể bắt đầu tại 56.7, kết thúc tại 10.2và có kích thước bước là -2.159. Điều duy nhất quan trọng là các điểm bạn xuất ra, khi được thả nổi, khớp chính xác với đầu vào. Tôi đã thêm một ví dụ cho thấy điều đó.