Cho đầu vào của một số nguyên n và một danh sách các số nguyên dương m 1 , m 2 , ..., xuất ra một danh sách các số nguyên m 1 ' , m 2 ' , ... trong đó m x ' được định nghĩa là trung bình của m xn qua m x + n .
Khi tính các giá trị trung bình này, hãy bỏ qua các chỉ số nằm ngoài giới hạn (và điều chỉnh những gì bạn đang chia tổng cho phù hợp). n sẽ luôn là ≥ 1 nhưng không bao giờ bằng một nửa chiều dài của m (làm tròn xuống) hoặc nhiều hơn. Điều này có nghĩa là độ dài tối thiểu của m là 4. Các phần tử trong m sẽ là số nguyên dương, nhưng đầu ra phải chính xác đến ít nhất 3 chữ số thập phân.
Các phần tử đầu vào / đầu ra là các danh sách có thể là các chuỗi được phân tách bằng khoảng trắng / / dấu phẩy hoặc mảng / danh sách / vv. Đối với đầu vào, nếu giải pháp của bạn là một hàm, bạn cũng có thể lấy một đối số đầu tiên là n và các đối số bổ sung là m x (điều này cũng áp dụng cho các đối số dòng lệnh).
Đây là một đại diện trực quan của n=1
:
1 4 5 7 10
__/ | | |
L avg(1,4) = 2.5
| | |
\___/ | |
L avg(1,4,5) = 3.333
| |
\___/ |
L avg(4,5,7) = 5.333
|
\___/
L avg(5,7,10) = 7.333
\___
L avg(7,10) = 8.5
Final output: 2.5 3.333 5.333 7.333 8.5
Vì đây là mã golf , mã ngắn nhất tính bằng byte sẽ thắng.
Các trường hợp thử nghiệm ( chúng được thực hiện thủ công; vui lòng thông báo cho tôi về bất kỳ lỗi nào ):
In Out
----------------------------------------------------------------------
n=1, m=12 6 3 9 9 7 6 6
n=1, m=1 4 5 7 10 2.5 3.333 5.333 7.333 8.5
n=1, m=1 3 3 7 4 2 4 2 2 2.333 4.333 4.666 4.333 3.333 2.666 3
n=2, m=1 3 5 9 10 14 15 16 23 3 4.5 5.6 8.2 10.6 12.8 15.6 17 18
n=3, m=1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
n=3, m=1 2 3 4 5 6 7 8 2.5 3 3.5 4 5 5.5 6 6.5
avg(0,1,2)
không giống như avg(1,2)
. Đối với "trường hợp cạnh" (ha), bạn không nên lấy trung bình nhiều yếu tố của danh sách đầu vào.
m_i
là tích cực.