USACO 2014 - Tháng 3 - Hạng Bạc

Bộ đề bài

# Bài tập Điểm Thời gian: Giới hạn bộ nhớ
1 USACO 2014 - Watering the Fields 100 (p) 4.0s 512M
2 USACO 2014 - The Lazy Cow 100 (p) 4.0s 512M
3 USACO 2014 - Mooo Moo 100 (p) 4.0s 512M

1. USACO 2014 - Watering the Fields

Điểm: 100 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Do thiếu mưa, Farmer John muốn xây dựng một hệ thống tưới tiêu để dẫn nước giữa \(N\) cánh đồng của mình (\(1 \le N \le 2\,000\)).

Mỗi cánh đồng \(i\) được mô tả bởi một điểm \((x_i,y_i)\) riêng biệt trên mặt phẳng hai chiều, với \(0 \le x_i,y_i \le 1\,000\). Chi phí xây dựng một đường ống dẫn nước giữa hai cánh đồng \(i\)\(j\) bằng bình phương khoảng cách Euclid giữa chúng:

\[ (x_i-x_j)^2+(y_i-y_j)^2 \]

FJ muốn xây dựng một hệ thống đường ống có chi phí nhỏ nhất sao cho tất cả các cánh đồng đều được nối với nhau, tức là nước ở một cánh đồng bất kỳ có thể đi theo một dãy đường ống để đến bất kỳ cánh đồng nào khác.

Đáng tiếc, nhà thầu đang giúp FJ lắp đặt hệ thống tưới tiêu từ chối lắp bất kỳ đường ống nào có chi phí (bình phương độ dài Euclid) nhỏ hơn \(C\) (\(1 \le C \le 1\,000\,000\)).

Hãy giúp FJ tính số tiền nhỏ nhất cần trả để nối tất cả các cánh đồng bằng một mạng lưới đường ống.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên \(N\)\(C\).
  • \(N\) dòng tiếp theo, dòng thứ \(i\) chứa hai số nguyên \(x_i\)\(y_i\).

Ràng buộc

  • \(1 \le N \le 2\,000\).
  • \(0 \le x_i,y_i \le 1\,000\) và các điểm \((x_i,y_i)\) đôi một khác nhau.
  • \(1 \le C \le 1\,000\,000\).

Dữ liệu ra

In ra chi phí nhỏ nhất của một mạng lưới đường ống nối tất cả các cánh đồng, hoặc \(-1\) nếu không thể xây dựng mạng lưới như vậy.

Ví dụ

Ví dụ 1

Input
3 11
0 2
5 0
4 3
Output
46
Giải thích

\(3\) cánh đồng tại các vị trí \((0,2)\), \((5,0)\)\((4,3)\). Nhà thầu chỉ lắp những đường ống có chi phí ít nhất là \(11\).

FJ không thể xây đường ống giữa hai cánh đồng tại \((4,3)\)\((5,0)\) vì chi phí chỉ là \(10\). Do đó, ông xây một đường ống giữa \((0,2)\)\((5,0)\) với chi phí \(29\), cùng một đường ống giữa \((0,2)\)\((4,3)\) với chi phí \(17\).

Nguồn

USACO 2014 March Contest, Silver — Watering the Fields

Tác giả: Brian Dean, 2014.

2. USACO 2014 - The Lazy Cow

Điểm: 100 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Đó là một ngày hè nóng nực và cô bò Bessie cảm thấy khá lười biếng. Cô muốn chọn một vị trí trong cánh đồng để có thể tiếp cận nhiều cỏ ngon nhất có thể mà chỉ phải đi một quãng ngắn.

Cánh đồng nơi Bessie sống được mô tả bởi một lưới gồm \(N \times N\) ô vuông (\(1 \le N \le 400\)). Ô ở hàng \(r\), cột \(c\) (\(1 \le r,c \le N\)) chứa \(G(r,c)\) đơn vị cỏ (\(0 \le G(r,c) \le 1\,000\)). Từ ô xuất phát trên lưới, Bessie chỉ sẵn lòng đi nhiều nhất \(K\) bước (\(0 \le K \le 2N\)). Mỗi bước đưa cô đến ô nằm ngay phía bắc, nam, đông hoặc tây của vị trí hiện tại.

Ví dụ, giả sử lưới như sau, trong đó (B) biểu thị vị trí ban đầu của Bessie (ở đây là hàng \(3\), cột \(3\)):

50    5     25*   6     17
14    3*    2*    7*    21
99*   10*   1*(B) 2*    80*
8     7*    5*    23*   11
10    0     78*   1     9

Nếu \(K=2\), Bessie chỉ có thể đến các vị trí được đánh dấu *.

Hãy giúp Bessie xác định lượng cỏ lớn nhất mà cô có thể tiếp cận nếu chọn vị trí ban đầu tối ưu trên lưới.

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên \(N\)\(K\).
  • \(N\) dòng tiếp theo, dòng thứ \(r\) chứa \(N\) số nguyên mô tả hàng \(r\) của lưới.

Ràng buộc

  • \(1 \le N \le 400\).
  • \(0 \le K \le 2N\).
  • \(0 \le G(r,c) \le 1\,000\).

Dữ liệu ra

In ra lượng cỏ lớn nhất Bessie có thể tiếp cận nếu chọn vị trí ban đầu tối ưu, tức là vị trí cho phép cô tiếp cận nhiều cỏ nhất.

Ví dụ

Ví dụ 1

Input
5 2
50 5 25 6 17
14 3 2 7 21
99 10 1 2 80
8 7 5 23 11
10 0 78 1 9
Output
342
Giải thích

Trong ví dụ trên, Bessie có thể tiếp cận tổng cộng \(342\) đơn vị cỏ nếu đứng ở chính giữa lưới.

Nguồn

USACO 2014 March Contest, Silver — The Lazy Cow

Tác giả: Brian Dean, 2014.

3. USACO 2014 - Mooo Moo

Điểm: 100 (p) Thời gian: 4.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Farmer John đã hoàn toàn quên mất mình sở hữu bao nhiêu con bò! Ông quá xấu hổ để ra đồng đếm vì không muốn những cô bò nhận ra sự đãng trí của mình. Thay vào đó, ông quyết định bí mật đếm bò bằng cách đặt micrô tại những cánh đồng nơi chúng thường tụ tập, với suy luận rằng có thể xác định số bò từ tổng âm lượng của tất cả tiếng rống nghe được.

\(N\) cánh đồng của FJ (\(1 \le N \le 100\)) nằm thành một hàng dọc theo một con đường thẳng dài. Mỗi cánh đồng có thể chứa nhiều giống bò; FJ sở hữu bò thuộc \(B\) giống khác nhau (\(1 \le B \le 20\)), và một cô bò giống \(i\) rống với âm lượng \(V(i)\) (\(1 \le V(i) \le 100\)). Hơn nữa, một luồng gió mạnh thổi dọc con đường, mang âm thanh theo một hướng từ trái sang phải: nếu âm lượng tiếng rống trong một cánh đồng là \(X\), âm thanh này sẽ đóng góp \(X-1\) vào tổng âm lượng tiếng rống ở cánh đồng kế tiếp (rồi \(X-2\) ở cánh đồng sau nữa, v.v.). Nói cách khác, âm lượng tiếng rống tại một cánh đồng bằng tổng đóng góp của những cô bò trong chính cánh đồng đó cộng với \(X-1\), trong đó \(X\) là tổng âm lượng tiếng rống tại cánh đồng ngay trước.

Cho âm lượng tiếng rống mà FJ ghi lại tại mỗi cánh đồng, hãy tính số bò ít nhất mà FJ có thể sở hữu.

Âm lượng FJ ghi lại tại bất kỳ cánh đồng nào cũng không vượt quá \(100\,000\).

Dữ liệu vào

  • Dòng đầu tiên chứa hai số nguyên \(N\)\(B\).
  • \(B\) dòng tiếp theo, dòng thứ \(i\) chứa số nguyên \(V(i)\).
  • \(N\) dòng cuối, dòng thứ \(i\) chứa tổng âm lượng của tất cả tiếng rống tại cánh đồng \(i\).

Ràng buộc

  • \(1 \le N \le 100\).
  • \(1 \le B \le 20\).
  • \(1 \le V(i) \le 100\).
  • Âm lượng ghi lại tại mỗi cánh đồng không vượt quá \(100\,000\).

Dữ liệu ra

In ra số bò ít nhất mà FJ sở hữu, hoặc \(-1\) nếu không tồn tại cách bố trí bò nào phù hợp với dữ liệu vào.

Ví dụ

Ví dụ 1

Input
5 2
5
7
0
17
16
20
19
Output
4
Giải thích

FJ có \(5\) cánh đồng với âm lượng tiếng rống lần lượt là \(0,17,16,20,19\). Có hai giống bò: giống thứ nhất rống với âm lượng \(5\), giống còn lại rống với âm lượng \(7\).

Tại cánh đồng \(2\)\(2\) cô bò giống số \(1\)\(1\) cô bò giống số \(2\); tại cánh đồng \(4\) còn có thêm một cô bò giống số \(1\).

Nguồn

USACO 2014 March Contest, Silver — Mooo Moo

Tác giả: Brian Dean, 2014.