trang chủ / đề bài / tq_tst_26_d

Robot

Đề bài

Mô tả

Một dây chuyền xuất khẩu cam của công ty XYZ tiến hành đánh giá sản phẩm. Trên dây chuyền có n quả cam đánh số từ 1 đến n đang được đưa vào đánh giá chất lượng, quả thứ i có hàm lượng độc tố là ai (i=1,2,…,n). Rô bốt P của công ty thực hiện việc phân lô sản phẩm để chia n quả cam trên thành đúng k lô. Cam được phân lô theo thứ tự từ đầu đến cuối, mỗi lô ít nhất một quả (mỗi lô là một đoạn các quả cam liên tiếp). Rô bốt Q của công ty đối tác thực hiện việc đánh giá chất lượng, với mỗi lô cam, rô bốt Q sẽ chọn ra một quả có hàm lượng độc tố lớn nhất để làm đại diện cho lô hàng đó. Hàm lượng độc tố của một lô là hàm lượng độc tố của quả đại diện.

Yêu cầu: Hãy lập trình giúp rô bốt P chia lô sao cho tổng hàm lượng độc tố của tất cả k lô cam là nhỏ nhất có thể.

Dữ liệu vào

  • Dòng thứ nhất gồm hai số nguyên dương n,k (k≤n);
  • Dòng thứ hai gồm n số nguyên dương a1,a2,…,an (ai≤109;1≤i≤n).

Các số ghi trên cùng một dòng được phân cách nhau bởi một dấu cách.

Dữ liệu ra

Một số nguyên là tổng hàm lượng độc tố nhỏ nhất tìm được.

Ràng buộc

  • 1≤k≤n≤2·105, 1≤ai≤109.
  • Nếu dãy a không phải dãy không giảm thì n≤5·104 (đề gốc là n≤2·105 cho mọi test; trên CTOJ giới hạn này được giảm ở subtask 4).

Subtasks

  • Subtask 1 (30% số điểm): n≤100.
  • Subtask 2 (30% số điểm): n≤1000.
  • Subtask 3 (20% số điểm): ai≤ai+1 (1≤i<n), n≤2·105.
  • Subtask 4 (20% số điểm): n≤5·104, không có giới hạn gì thêm.

Ví dụ

Input Output Giải thích
7 3
2 5 1 8 9 2 6
15 Các lô: lô 1 gồm 2,5; lô 2 gồm 1; lô 3 gồm 8,9,2,6. Tổng 5+1+9=15.
7 4
6 2 6 1 5 6 9
21 Ví dụ thêm (không có trong đề gốc). Các lô: (6,2,6), (1), (5), (6,9), tổng 6+1+5+9=21. Phải chia đúng 4 lô: chia 1 lô thì tổng chỉ là 9.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0