trang chủ / đề bài / partfarm

Chia đồng cỏ

Đề bài

Mô tả

Cho một lưới N×N biểu diễn số bò trong mỗi ô. Bạn có thể dựng tối đa K hàng rào, mỗi hàng rào là một đường thẳng đứng hoặc nằm ngang trải qua toàn bộ chiều ngang/dọc của lưới (không được cắt xuyên qua ô). Các hàng rào chia lưới thành nhiều khu vực hình chữ nhật.

Hãy chọn cách đặt tối đa K hàng rào sao cho khu vực lớn nhất (tổng số bò trong khu vực) là nhỏ nhất có thể.

Dữ liệu vào

  • Dòng 1: Hai số nguyên N và K
  • Dòng i+1 (với 1≤i≤N): N số nguyên, là số bò trong mỗi ô của hàng i

Dữ liệu ra

  • Một số nguyên duy nhất: giá trị nhỏ nhất của khu vực lớn nhất

Ràng buộc

  • 2≤N≤15
  • 1≤K≤2N−2
  • 0≤ số bò trong mỗi ô ≤1000

Ví dụ

Input Output Giải thích
3 2
1 1 2
1 1 2
2 2 4
4 Dùng 2 hàng rào: 1 hàng ngang (sau hàng 2) và 1 hàng dọc (sau cột 2). Khu vực lớn nhất là 4 (góc dưới phải).
2 1
446 962
334 257
1219 Chỉ có 1 hàng rào. Cắt dọc cho hai khu vực 446+334=780 và 962+257=1219, khu vực lớn nhất là 1219. Cắt ngang cho 446+962=1408 và 334+257=591, 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.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