trang chủ / đề bài / voi15_mincut

Cắt hình

Đề bài

Mô tả

Cho A là lưới ô vuông gồm m dòng và n cột. Các dòng của lưới được đánh số từ 1 đến m, từ trên xuống dưới. Các cột của lưới được đánh số từ 1 đến n, từ trái sang phải. Ô nằm trên giao của dòng i và cột j của lưới, được gọi là ô (i,j), chứa số nguyên không âm ai,j có giá trị không vượt quá 106.

Các lưới ô vuông như vậy luôn là đối tượng cho nhiều nghiên cứu thú vị. Vừa qua, trong giờ học ôn luyện cho kỳ thi học sinh giỏi Tin học, Hùng được cô giáo giao cho giải quyết bài toán trả lời truy vấn sau đây đối với bảng đã cho:

Cho một hình chữ nhật con có ô trái trên là ô (x,y) và ô phải dưới là ô (u,v), cần đưa ra chênh lệch nhỏ nhất trong số các chênh lệch giữa hai tổng các số trong hai hình chữ nhật thu được bằng việc cắt ngang hoặc cắt dọc hình chữ nhật đã cho dọc theo đường kẻ của lưới. Giả thiết (x,y) và (u,v) là hai ô khác nhau trên lưới.

Bạn hãy giúp Hùng giải quyết bài toán đặt ra.

Yêu cầu: Cho lưới A và k bộ xq,yq,uq,vq (q=1,2,…,k) tương ứng với k truy vấn, hãy đưa ra các câu trả lời cho k truy vấn.

Dữ liệu vào

  • Dòng đầu tiên chứa ba số nguyên m, n, k (k≤m×n).
  • m dòng tiếp theo, dòng thứ i chứa n số nguyên không âm ai,1,ai,2,…,ai,n.
  • Dòng thứ q trong số k dòng tiếp theo chứa 4 số nguyên xq,yq,uq,vq (q=1,2,…,k).

Dữ liệu ra

Gồm k dòng, mỗi dòng chứa một số là câu trả lời cho một truy vấn theo thứ tự xuất hiện trong dữ liệu vào.

Ràng buộc

  • 1≤m,n≤1000; 1≤k≤m×n.
  • 0≤ai,j≤106.
  • 1≤xq≤uq≤m, 1≤yq≤vq≤n, ô (xq,yq) khác ô (uq,vq).

Subtasks

  • Subtask 1 (30% số điểm): m,n≤10.
  • Subtask 2 (30% số điểm): m,n≤100.
  • Subtask 3 (40% số điểm): m,n≤1000.

Mỗi subtask gồm nhiều test, mỗi test được chấm điểm riêng.

Ví dụ

Input Output Giải thích
3 3 2
1 1 1
1 1 1
1 1 1
1 1 3 3
1 1 3 2
3
0
Hình 3×3 có tổng 9: cắt sau dòng hoặc cột đầu cho 3 và 6, chênh lệch 3. Hình 3×2 cắt dọc giữa hai cột cho 3 và 3.
2 4 3
5 0 1 2
3 0 4 1
1 1 2 4
1 1 1 4
1 2 2 2
0
2
0
Cả lưới: cắt ngang giữa hai dòng cho 8 và 8. Dòng 1: cắt sau cột 1 cho 5 và 3. Cột 2 gồm hai số 0.

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