trang chủ / bài tập / roboherd

Đàn Bò Robot

Đề bài

Mô tả

Bessie cần chế tạo K con bò robot, mỗi con cần được lắp vi điều khiển tại N vị trí khác nhau. Để phân biệt các con bò, không có hai con bò nào được có cùng bộ vi điều khiển: với mỗi cặp bò bất kỳ, phải tồn tại ít nhất một vị trí mà hai con bò đó sử dụng vi điều khiển khác model.

Tại vị trí i, có Mi model vi điều khiển khác nhau, model thứ j có giá Pi,j.

Hãy tìm cách chế tạo K con bò robot với tổng chi phí nhỏ nhất, đảm bảo mọi con bò đều có bộ vi điều khiển phân biệt nhau.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên NK.
  • N dòng tiếp theo, dòng thứ i bắt đầu bằng số nguyên Mi, theo sau là Mi số nguyên Pi,1,Pi,2,,Pi,Mi.

Dữ liệu ra

Một số nguyên duy nhất — tổng chi phí nhỏ nhất để chế tạo K con bò robot phân biệt.

Ràng buộc

  • 1N100000
  • 1K100000
  • 1Mi10
  • 1Pi,j108
  • Tổng số lượng model vi điều khiển trên tất cả các vị trí không vượt quá 500000.
  • Đảm bảo có ít nhất K bộ vi điều khiển phân biệt.

Ví dụ

Input Output Giải thích
3 10
4 1 5 3 10
3 2 3 3
5 1 3 4 6 6
61 Có 3 vị trí: vị trí 1 có 4 model (giá 1, 3, 5, 10), vị trí 2 có 3 model (giá 2, 3, 3), vị trí 3 có 5 model (giá 1, 3, 4, 6, 6). Con bò rẻ nhất dùng model giá thấp nhất mỗi vị trí: 1+2+1=4. Cần chế tạo 10 con bò với tổng chi phí nhỏ nhất là 61.

Ghi chú

Tổng số cấu hình phân biệt có thể là 4×3×5=60, nhưng chỉ cần chọn 10 cấu hình rẻ nhất.

Con bò "cơ sở" (rẻ nhất) dùng model giá thấp nhất ở mỗi vị trí, chi phí =1+2+1=4. Mỗi con bò khác được tạo ra bằng cách nâng cấp một hoặc nhiều vị trí lên model đắt hơn.

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