Xây dựng đội bóng

Đề bài

Mô tả

n người ứng tuyển vào một câu lạc bộ thể thao. Câu lạc bộ cần chọn đúng p cầu thủ thi đấu tại p vị trí khác nhau (mỗi vị trí đúng một người) và đúng k cổ động viên. Mỗi người chỉ có thể đảm nhận tối đa một vai trò (hoặc cầu thủ tại một vị trí, hoặc cổ động viên).

Với người thứ i:

  • ai là sức mạnh người đó đóng góp nếu được chọn làm cổ động viên.
  • si,j là sức mạnh người đó đóng góp nếu được chọn làm cầu thủ thi đấu tại vị trí j.

Tổng sức mạnh của câu lạc bộ là tổng tất cả các đóng góp của những người được chọn. Hãy chọn p cầu thủ (một người cho mỗi vị trí) và k cổ động viên sao cho tổng sức mạnh này lớn nhất.

Dữ liệu vào

  • Dòng đầu chứa ba số nguyên n, p, k.
  • Dòng thứ hai chứa n số nguyên a1,a2,,an.
  • Trong n dòng tiếp theo, dòng thứ i chứa p số nguyên si,1,si,2,,si,p.

Dữ liệu ra

  • Một số nguyên duy nhất là tổng sức mạnh lớn nhất có thể của câu lạc bộ.

Ràng buộc

  • 2n105
  • 1p7
  • 1kp+kn
  • 1ai109
  • 1si,j109

Ví dụ

Input Output Giải thích
4 1 2
1 16 10 3
18
19
13
15
44 Chọn người 1 làm cầu thủ (s1,1=18), người 2 và 3 làm cổ động viên (a2+a3=16+10). Tổng =18+26=44.
3 2 1
500 498 564
100002 3
422332 2
232323 1
422899 Người 2 làm cầu thủ vị trí 1 (422332), người 1 làm cầu thủ vị trí 2 (3), người 3 làm cổ động viên (564). Tổng =422332+3+564=422899.
6 2 3
78 93 9 17 13 78
80 97
30 52
26 17
56 68
60 36
84 55
377 Một cách chọn tối ưu cho tổng 377.

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.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0