trang chủ / đề bài / thhv19_chg_11_b

Hệ thống nước

Đề bài

Mô tả

Nhà bác Sơn ở huyện Mộc Châu, Sơn La có một trang trại nuôi bò sữa lớn. Để cung cấp đủ thức ăn cho bò, bác phải trồng rất nhiều cỏ. Mùa hè năm nay, bác đã quyết định làm một hệ thống tưới nước cho N (1≤N≤300) đồng cỏ của mình. Để thuận tiện, các đồng cỏ được đánh số từ 1 đến N. Để tưới nước cho một đồng cỏ, bác có thể chọn 2 cách: một là đào ở đồng cỏ đó 1 cái giếng, hai là lắp ống nối dẫn nước từ một đồng cỏ khác đã có nước tưới.

Để đào một cái giếng ở đồng cỏ i cần 1 số tiền là Wi (1≤Wi≤100000). Lắp ống dẫn nước nối 2 đồng cỏ i và j cần 1 số tiền là Pij (1≤Pij≤100000 với i≠j; Pij=Pji; Pii=0).

Nước chảy được theo cả hai chiều của ống và qua nhiều ống liên tiếp, nên một đồng cỏ có nước nếu tại đó có giếng hoặc từ đó đi theo các ống đã lắp tới được một đồng cỏ có giếng. Thứ tự lắp đặt không quan trọng: "đồng cỏ đã có nước" không phụ thuộc vào số thứ tự của đồng cỏ (xem ví dụ 1, nước đi từ đồng cỏ 4 sang đồng cỏ 1 rồi sang các đồng cỏ 2, 3).

Yêu cầu: Tính xem bác Sơn phải chi ít nhất bao nhiêu tiền để tất cả các đồng cỏ đều có nước.

Dữ liệu vào

  • Dòng đầu tiên ghi số nguyên dương N là số đồng cỏ.
  • Các dòng 2…N+1: dòng i+1 chứa một số nguyên duy nhất Wi.
  • Các dòng N+2…2N+1: dòng N+1+i chứa N số nguyên cách nhau bởi dấu cách; số thứ j là Pij.

Dữ liệu ra

Ghi ra một số nguyên duy nhất là chi phí tối thiểu để cung cấp nước cho tất cả các đồng cỏ.

Ràng buộc

  • 1≤N≤300.
  • 1≤Wi≤100000.
  • 1≤Pij≤100000 với i≠j; Pij=Pji; Pii=0.

Subtasks

  • Subtask 1 (30% số điểm): N≤100, Wi≤102, Pij≤102.
  • Subtask 2 (30% số điểm): N≤200, Wi≤103, Pij≤103.
  • Subtask 3 (40% số điểm): N≤300, Wi≤105, Pij≤105.

Ví dụ

Input Output Giải thích
4
5
4
4
3
0 2 2 2
2 0 3 3
2 3 0 4
2 3 4 0
9 Mất 5 tiền để đào giếng ở đồng cỏ 1, 4 tiền ở đồng cỏ 2, 3 và 3 tiền ở đồng cỏ 4. Các ống tốn 2, 3 hoặc 4 tiền tùy theo hai đồng cỏ được nối. Bác Sơn đào giếng ở đồng cỏ 4 và lắp ống nối đồng cỏ 1 với cả 3 đồng cỏ còn lại, tổng chi phí 3+2+2+2=9.
3
2
3
1
0 1 6
1 0 6
6 6 0
4 Ví dụ bổ sung (không có trong đề gốc). Đào giếng ở đồng cỏ 1 và đồng cỏ 3, lắp ống nối đồng cỏ 1 với đồng cỏ 2: 2+1+1=4. Chỉ đào một giếng thì tốn ít nhất 1+6+1=8.
1
7
0
7 Ví dụ bổ sung (không có trong đề gốc). Chỉ có một đồng cỏ, phải đào giếng.

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