#5431. Trung bình trượt (Mã bài: MOVAVG)

Bộ nhớ: 512 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Cho một dòng dữ liệu gồm N số nguyên. Tại mỗi thời điểm nhập một số mới, hãy tính giá trị trung bình cộng của tối đa K số gần nhất (bao gồm cả số vừa nhập). Nếu số lượng số đã nhập ít hơn K , hãy tính trung bình cộng của tất cả các số đang có.

Dữ liệu:

  • Dòng đầu tiên chứa hai số nguyên N K ( 1 \le K \le N \le 1000 ).
  • Dòng thứ hai chứa N số nguyên A_1, A_2, \dots, A_N ( |A_i| \le 1000 ).

Kết quả:

  • In ra N số thực trên một dòng, tương ứng với giá trị trung bình cộng tại mỗi thời điểm nhập liệu. Kết quả làm tròn đến 2 chữ số thập phân.

Ví dụ:

Dữ liệu:

5 3
1 2 3 4 5

Kết quả:

1.00 1.50 2.00 3.00 4.00

Giải thích:

  • Nhập 1: (1)/1 = 1.00
  • Nhập 2: (1+2)/2 = 1.50
  • Nhập 3: (1+2+3)/3 = 2.00
  • Nhập 4: (2+3+4)/3 = 3.00 (số 1 bị loại vì cửa sổ trượt kích thước 3)
  • Nhập 5: (3+4+5)/3 = 4.00