trang chủ / đề bài / voi24_three

Ba đường truyền điện

Đề bài

Mô tả

Quốc gia Alpha có một trang trại điện gió được quy hoạch bởi một bảng vuông N hàng và N cột. Các hàng được đánh số từ 1 tới N từ trên xuống dưới, các cột được đánh số từ 1 tới N từ trái sang phải. Trang trại có M trạm sản xuất điện gió được đánh số từ 1 tới M. Trạm thứ i (1≤i≤M) được đặt tại ô thuộc hàng Ri, cột Ci và có công suất sản xuất là Wi oát.

Chủ trang trại mới ký hợp đồng cung cấp điện cho đối tác. Trang trại sẽ phải lắp ba đường truyền điện, mỗi đường truyền đi qua một hàng hoặc một cột trong bảng. Các đường truyền có thể cắt nhau nhưng không được trùng nhau. Tổng công suất cung cấp cho đối tác là tổng công suất của các trạm điện nằm trên ít nhất một trong ba đường truyền. Trang trại cần tìm ra cách lắp đặt ba đường truyền để tổng công suất cung cấp là lớn nhất có thể.

Ngoài ra, công ty có Q phương án điều chỉnh. Phương án điều chỉnh thứ j (1≤j≤Q) là tăng công suất của trạm Tj thêm một lượng Dj oát và giữ nguyên công suất Wi oát như hiện trạng ban đầu của mọi trạm i khác Tj. Lưu ý, các phương án là độc lập, nghĩa là các phương án đều chỉ áp dụng lên hiện trạng ban đầu của trang trại.

Yêu cầu: Hãy đưa ra tổng công suất lớn nhất có thể khi lắp ba đường truyền với hiện trạng ban đầu của trang trại và trong Q phương án điều chỉnh.

Dữ liệu vào

Dòng đầu ghi một số nguyên dương 𝒯 là số lượng trường hợp test.

Mỗi nhóm dòng trong số 𝒯 nhóm dòng tiếp theo mô tả một trường hợp test có cấu trúc như sau:

  • Dòng thứ nhất chứa ba số nguyên N, M và Q lần lượt là kích thước bảng, số lượng trạm điện và số lượng phương án điều chỉnh (3≤N≤109; 3≤M≤105; 1≤Q≤105).
  • Dòng thứ i trong số M dòng tiếp theo chứa ba số nguyên Ri, Ci và Wi lần lượt là vị trí hàng, vị trí cột và công suất của trạm điện thứ i. Dữ liệu bảo đảm không có hai trạm nào đặt tại cùng một ô (1≤Ri,Ci≤N; 1≤Wi≤109).
  • Dòng thứ j trong số Q dòng tiếp theo chứa hai số nguyên Tj và Dj thể hiện phương án điều chỉnh tăng công suất thêm Dj oát cho trạm điện thứ Tj (1≤Tj≤M; 1≤Dj≤1018).

Gọi ∑M và ∑Q tương ứng là tổng của tất cả các giá trị M và Q trong tất cả 𝒯 trường hợp test. Dữ liệu đảm bảo 1≤∑M,∑Q≤2×105.

Các số trên cùng một dòng cách nhau bởi dấu cách.

Dữ liệu ra

In ra 𝒯 nhóm dòng, mỗi nhóm là kết quả của trường hợp test tương ứng có cấu trúc sau:

  • Dòng thứ nhất ghi ra một số nguyên dương là tổng công suất lớn nhất tìm được với hiện trạng trang trại ban đầu.
  • Dòng thứ j trong số Q dòng tiếp theo ghi ra tổng công suất lớn nhất tìm được với phương án điều chỉnh thứ j.

Ràng buộc

  • 3≤N≤109; 3≤M≤105; 1≤Q≤105.
  • 1≤Ri,Ci≤N; 1≤Wi≤109; không có hai trạm nào đặt tại cùng một ô.
  • 1≤Tj≤M; 1≤Dj≤1018.
  • 1≤∑M,∑Q≤2×105.

Subtasks

  • Subtask 1 (20% số điểm): N,M,Q≤40 và 𝒯=1.
  • Subtask 2 (20% số điểm): N,M,Q≤100 và 𝒯=1.
  • Subtask 3 (20% số điểm): N,M,Q≤500 và 𝒯=1.
  • Subtask 4 (20% số điểm): M,Q≤1000 và ∑M,∑Q≤2000.
  • Subtask 5 (10% số điểm): M≤1000 và ∑M≤2000.
  • Subtask 6 (10% số điểm): Không có ràng buộc gì thêm.

Ví dụ

Input Output Giải thích
2
5 7 2
1 1 1
3 1 2
2 2 3
4 2 4
2 4 2
1 5 5
3 5 2
5 3
2 7
3 3 1
1 1 1
1 2 2
1 3 3
3 1
17
19
24
6
7
Trường hợp test thứ nhất: với hiện trạng ban đầu, một cách tối ưu là lắp ba đường truyền ở cột 1, cột 2 và cột 5, tổng công suất 17. Với phương án thứ nhất (trạm 5 ở ô (2,4) tăng từ 2 lên 5), một cách tối ưu là hàng 2, cột 2 và cột 5, tổng công suất 19. Với phương án thứ hai (trạm 2 ở ô (3,1) tăng từ 2 lên 9), một cách tối ưu là hàng 1, hàng 3 và cột 2, tổng công suất 24. Trường hợp test thứ hai: ba trạm cùng nằm trên hàng 1, lắp hàng 1 và hai đường bất kỳ khác được 6, rồi 7 khi trạm 3 tăng thêm 1.
1
4 6 3
1 1 4
1 2 1
2 2 6
3 1 2
3 3 5
4 4 3
6 1
4 9
2 2
18
18
27
20
Ban đầu, lắp hàng 1, hàng 2 và hàng 3 được 5+6+7=18. Phương án thứ nhất: trạm 6 lên 4, vẫn không vượt 18. Phương án thứ hai: trạm 4 ở ô (3,1) lên 11; lắp hàng 3, cột 1 và cột 2 được 16+15−11+7=27. Phương án thứ ba: trạm 2 ở ô (1,2) lên 3; lắp hàng 1, hàng 3 và cột 2 được 7+7+9−3=20.

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