CSES - Sliding Cost | Chi phí đoạn tịnh tiến

Xem PDF



Tác giả:
Dạng bài
Ngôn ngữ cho phép
Assembly, Awk, C, C#, C++, Clang, Cobol, D, Groovy, Haskell, JS, Java, Kotlin, Lua, Node JS, OCaml, ObjectiveC, Output, PHP, Pascal, Perl, Prolog, Pypy, Pypy 3, Python, Ruby, Rust, Scala, Scratch, Swift
Điểm: 1600 Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Bạn được cho một mảng gồm \(n\) số nguyên. Nhiệm vụ của bạn là: với mỗi đoạn con gồm \(k\) phần tử liên tiếp, từ trái sang phải, tính tổng chi phí tối thiểu để tất cả các phần tử bằng nhau.

Bạn có thể tăng hoặc giảm từng phần tử với chi phí \(x\), trong đó \(x\) là chênh lệch giữa giá trị mới và giá trị ban đầu. Tổng chi phí của đoạn con là tổng của các chi phí tăng hoặc giảm mỗi phần tử trong đó.

Input

  • Dòng đầu tiên chứa hai số nguyên \(n\)\(k\): số lượng phần tử của mảng và kích thước của đoạn con
  • Dòng tiếp theo chứa \(n\) số nguyên \(x_1,x_2,\ldots,x_n\): các phần tử của mảng

Constraints

  • \(1 \leq k \leq n \leq 2 \cdot 10^5\)
  • \(1 \leq x_i \leq 10^9\)

Output

  • In ra \(n-k+1\) số: các chi phí

Example

Test 1

Input
8 3
2 4 3 5 8 1 2 1
Output
2 2 5 7 7 1

Bình luận (4)

Mới nhất
Tải bình luận...