- không gia đình, không người thân, không bạn bè. Đó là một quá khứ u buồn của cậu ấy. Do hoàn cảnh đặc biệt đó nên đã sinh ra một con người với tính cách khá giống các nhân vật "phản diện" trong các bộ phim hoạt hình. Tình cờ một ngày gặp được , một con người cũng giống như nhưng lại có một cô bạn gái rất xinh đẹp. Trùng hợp là lại đồng ý làm bạn với , từ đó câu chuyện của chúng ta bắt đầu.
Như các bạn đã biết,
là một người nghiện máy tính, cụ thể là nghiện ba thứ: nghiện code, nghiện trò chơi điện tử, nghiện phim hoạt hình. Trong các trò chơi điện tử mà từng chơi qua, cậu ấy tâm đắc nhất với hai trò chơi, đó là hai trò chơi A của nhà G và V của nhà R. Kĩ năng của cậu ấy có thể nói là thượng thừa ở cả hai trò chơi này.Trùng hợp thay, \(n\) người bạn, những người bạn đó đều chơi cả hai trò chơi trên, khi được mời để giới thiệu vào đội tuyển, họ đều đồng ý.
đang có ý định thành lập đội tuyển thể thao điện tử Esports và cần người thành thạo trong hai trò chơi này. Do kĩ năng thượng thừa của , cậu ấy quen khá nhiều người chơi giỏi. Cậu ấy cóCó thể biểu diễn mức độ kĩ năng của một người chơi dưới dạng một số nguyên dương \(a\). Trong biểu diễn ở hệ nhị phân của số nguyên \(a\) này gồm \(20\) bit (nếu không đủ \(20\) bit thì ta thêm các bit \(0\) vào bên trái sao cho đủ \(20\) bit). Sau đó, số này được chia thành hai phần, một phần gồm \(10\) bit bên trái và một phần gồm \(10\) bit bên phải. Phần \(10\) bit bên trái được đưa về hệ thập phân và đó là mức độ kĩ năng ở tựa game A của người này, coi là \(x\). Phần \(10\) bit bên phải cũng được đưa về hệ thập phân và đó là mức độ kĩ năng ở tựa game V của người này, coi là \(y\). Mỗi người chơi đều có một số nguyên biểu diễn mức độ kĩ năng của người đó. Độ chênh lệch kĩ năng giữa hai người \(i\) và \(j\) bằng \(\max(|x_{i}-x{j}|,|y_{i}-y_{j}|)\). Độ chênh lệch kĩ năng của \(k\) người bất kì bằng giá trị lớn nhất của độ chênh lệch kĩ năng giữa hai người bất kì trong \(k\) người này.
\(k\) thành viên để tham gia giải vô địch Flower_On_Stone League. Tuy nhiên, để có thể giao tiếp tốt hơn, cậu ấy quyết định chọn các thành viên sao cho độ chênh lệch kĩ năng giữa \(k\) thành viên là nhỏ nhất có thể, như vậy họ mới hiểu ý nhau. quyết định sẽ cài một chương trình để tính toán việc này, thế nhưng Macbook M2 Pro của cậu ấy đang bị hỏng và phải đem đi sửa chữa. Bạn hãy giúp cậu ấy nhé ~(để cậu ấy còn lấy được sự tin tưởng của để còn thực hiện bước tiếp theo của kế hoạch chứ muahahahaha)~.
khi này cần chọn lấyYêu cầu: Đưa ra một số nguyên dương duy nhất là độ chênh lệch kĩ năng nhỏ nhất có thể.
Test 1
1
3 3
1 2 3
2
Sau khi giới thiệu tuyển thủ cho
, cậu ấy đã phần nào tin tưởng hơn . Trùng hợp thay, lúc đó một biến cố đã xảy ra, đó là bị bạn gái đá. Liệu chuyện gì sẽ xảy ra kế tiếp?là một đá thủ, chuyên sưu tầm các tảng đá. Hôm nay, bất ngờ tìm được một khu vực có "view triệu đô" - biển xanh, mây trắng, nắng vàng, quyết định mang các tảng đá của mình tới để xây dựng thành một đoạn đường.
\(n\) tảng đá, tảng đá thứ \(i\) có trọng lượng là \(w_i\), khi nhảy lên trên chúng sẽ phát ra một loại âm thanh, để thuận tiện thì ta đánh số chúng trùng với trọng lượng của tảng đá, gọi là chất âm. Các tảng đá có thể khác nhau về trọng lượng cũng như chất âm, nhưng trọng bộ sưu tầm có rất nhiều đá của vẫn có thể tồn tại hai hoặc nhiều tảng đá cùng trọng lượng và chất âm. ban đầu xếp chúng thành một con đường thẳng, từ tảng đá thứ \(1\) cho tới tảng đá thứ \(n\). Khi nhảy từ tảng đá đầu tiên tới tảng đá cuối cùng, ta nhận được một "bản nhạc" khá vui tai. Sau đấy cậu ấy đã gọi điện cho bạn gái cũ của để mời cô ấy đến thử đoạn đường này và ngắm nhìn khung cảnh tuyệt đẹp kia.
cóTuy nhiên, ngay trước thời điểm cô ấy đến, \(k\) và đổi chỗ chúng. Sau khi đổi chỗ, cậu ấy sẽ lại thử nhảy từ tảng đá thứ \(1\) tới tảng đá thứ \(n\) và lại thu được một "bản nhạc".
bỗng muốn thay đổi "bản nhạc" kia. Cậu ấy có thể làm thao tác sau vô số lần, đó là chọn hai tảng đá liền kề có tổng trọng lượng không quáCậu ấy tự hỏi, nếu cứ thực hiện các thao tác trên, sẽ thu được bao nhiêu "bản nhạc" khác nhau. Hai "bản nhạc" được coi là khác nhau nếu có ít nhất một vị trí mà chất âm của tảng đá giữa chúng khác nhau. ~Cậu ấy cần biết có bao nhiêu "bản nhạc" khác nhau để còn trổ tài "làm nhạc" cho cô bạn gái cũ của
biết chứ.~Yêu cầu: Đếm số "bản nhạc" khác nhau có thể thu được.
Dòng đầu tiên chứa số nguyên dương \(\phi\) - số thứ tự của subtask chứa test đó \((1 \le \phi \le 6)\).
Dòng tiếp theo chứa hai số nguyên dương lần lượt là \(N\) và \(K\) – lần lượt là số tảng đá và tổng trọng lượng tối đa của hai tảng đá liền kề có thể chọn để hoán đổi \((1 \le N \le 3 \times 10^5, 1\le K \le 10^9)\).
Dòng cuối cùng chứa \(N\) số nguyên dương \(w_1,w_2,...,w_N\) \((1 \le w_i \le 10^9)\).
Subtask \(1\) (\(10\%\) số điểm): Có \(N \le 7\).
Subtask \(2\) (\(10\%\) số điểm): Có \(N \le 100\) và tất cả chất âm của các tảng đá đều khác nhau đôi một.
Subtask \(3\) (\(15\%\) số điểm): Có \(N \le 1000\) và tất cả chất âm của các tảng đá đều khác nhau đôi một.
Subtask \(4\) (\(20\%\) số điểm): Có \(N \le 1000\).
Subtask \(5\) (\(25\%\) số điểm): Có \(N \le 10^5\) và tất cả chất âm của các tảng đá đều khác nhau đôi một.
Subtask \(6\) (\(20\%\) số điểm): Không có ràng buộc gì thêm.
Test 1
1
4 8
3 5 3 7
3
Ta có "bản nhạc" ban đầu là \([3,5,3,7]\), cũng là "bản nhạc" đầu tiên.
Ta có thể thu "bản nhạc" thứ hai từ "bản nhạc" ban đầu bằng cách hoán đổi \(w_1\) và \(w_2\) và ta thu được "bản nhạc" \([5,3,3,7]\).
Từ "bản nhạc" thứ hai ta không thể hoán đổi \(w_1\) và \(w_2\) vì khi hoán đổi như vậy thì ta thu được "bản nhạc" giống như "bản nhạc" ban đầu.
Từ "bản nhạc" thứ hai ta không thể hoán đổi \(w_2\) và \(w_3\) vì khi hoán đổi như vậy thì ta thu được "bản nhạc" giống như "bản nhạc" thứ hai bên trên.
Từ "bản nhạc" thứ hai ta không thể hoán đổi \(w_3\) và \(w_4\) vì tổng của chúng là \(3 + 7 = 10 > 8\).
Từ "bản nhạc" ban đầu ta có thể hoán đổi ra "bản nhạc" thứ ba bằng cách hoán đổi \(w_2\) và \(w_3\) và ta thu được "bản nhạc" \([3,3,5,7]\).
Cứ tiếp tục xét các điều kiện như trên. Ta thu được \(3\) "bản nhạc".
Sau khi dẫn cô gái ấy đi trên đoạn đường "biết hát" kia,
đã nhận được cảm tình của cô ấy. Tuy nhiên, ở đây, lại đang rất "lụy" người yêu cũ, vì vậy đã tới lúc để chơi đùa một chút...\(N\) bồn hoa, được đánh số từ \(1\) đến \(N\), trong đó một số bồn hoa được kết nối bằng ống nước. Các bồn hoa và các ống nước tạo thành một cây, trong đó các bồn hoa là các nút và các ống nước là các cạnh. Mỗi bồn hoa có một máy bơm được lắp đặt có thể bơm nước từ dưới đất lên trên. Nước này sẽ được tưới cho bồn hoa mà máy bơm đó đặt và nó sẽ chảy qua các ống nước đến một số bồn hoa khác mà có đường ống kết nối đến chúng.
có một vườn hoa nho nhỏ. Cậu ấy quyết định sẽ trồng hoa để tặng hoa cho cô "người yêu cũ" kia để tỏ lòng thành. Khu vườn gồmCác máy bơm được đánh số từ \(1\) đến \(N\) (số máy bơm bằng với số bồn hoa trong khu vườn). Nếu máy bơm đặt trong một bồn hoa có số thứ tự \(x\) (\(1 \le x \le N)\) hoạt động trong \(p\) phút, nước sẽ đến tất cả các bồn hoa có khoảng cách không quá \(p-1\) cạnh từ \(x\) trong cây (khoảng cách giữa hai đỉnh \(u\) và \(v\) bất kì là số cạnh \(u\) cần đi qua để đến tới \(v\)).
Hệ thống máy bơm được thiết kế sao cho một máy bơm chạy trước, sau đó là máy bơm khác và cứ tiếp tục như vậy (hai máy bơm không bao giờ hoạt động đồng thời, và một máy bơm chỉ có thể chạy một lần). Một bồn hoa được coi là đã được tưới nước nếu có nước đã tưới cho nó, không quan tâm nước đó là từ máy bơm nào. Các máy bơm được thiết kế sao cho nếu một máy bơm có số thứ tự \(i\) chạy, nó chỉ được chạy tối đa \(t_i\) phút. Một lần chạy của máy bơm phải kéo dài một số phút nguyên.
Tất cả các máy bơm đều tiêu thụ điện như sau:
cần tính được số tiền tối thiểu cần chi trả cho điện năng sao cho một bộ máy bơm phù hợp chạy để tất cả các bồn hoa đều được tưới. Tuy nhiên, do mải trồng hoa và cũng do quá đau buồn, cậu ấy quyết định nhờ cậy tới "người anh em" của mình. ~Do rủ lòng thương~ nên quyết định giúp, thế nhưng chiếc Macbook M2 Pro của cậu ấy vẫn chưa được sửa xong. Bạn hãy giúp cậu ấy nhé.
Yêu cầu: Xác định số tiền tối thiểu sao cho một bộ máy bơm phù hợp chạy, để tất cả các bồn hoa đều có thể được tưới.
Dòng đầu tiên chứa số nguyên dương \(\phi\) - số thứ tự của subtask chứa test đó \((1 \le \phi \le 7)\).
Dòng thứ hai chứa số nguyên dương \(N\) \((1 \le N \le 2000)\) - số bồn hoa, cũng là số máy bơm.
Dòng thứ ba chứa \(N\) số nguyên \(c_1,c_2,...,c_N\) (\(0 \le c_i \le 10^6)\) - số tiền điện năng mà một máy bơm chạy trong \(1,2,...,N\) phút.
Dòng thứ tư chứa \(N\) số nguyên \(t_1,t_2,...,t_N\) (\(0 \le t_i \le N)\) - thời gian chạy tối đa cho mỗi máy bơm. Trong trường hợp \(t_i = 0\) thì máy bơm thứ \(i\) không sử dụng được.
\(N-1\) dòng cuối cùng mỗi dòng chứa hai số \(u,v\) mô tả ống nước (cạnh) nối bồn hoa có số \(u\) và \(v\). Bộ dữ liệu đảm bảo rằng các bồn hoa và các ống nước nối với nhau tạo thành cây.
Dữ liệu vào luôn đảm bảo rằng \(c_1 \le c_2 \le ... \le c_N\).
Subtask \(1\) (\(10\%\) số điểm): Có \(N \le 8\).
Subtask \(2\) (\(10\%\) số điểm): Có \(N \le 75\) và cây có dạng đường thẳng.
Subtask \(3\) (\(10\%\) số điểm): Có \(N \le 500\) và cây có dạng đường thẳng.
Subtask \(4\) (\(15\%\) số điểm): Có \(N \le 2000\) và cây có dạng đường thẳng.
Subtask \(5\) (\(15\%\) số điểm): Có \(N \le 75\).
Subtask \(6\) (\(15\%\) số điểm): Có \(N \le 500\).
Subtask \(7\) (\(25\%\) số điểm): Không có ràng buộc gì thêm.
Test 1
1
8
1 2 5 7 8 14 20 29
2 4 1 0 2 3 2 0
2 5
6 5
5 7
2 3
1 8
4 1
1 5
5
Ta sẽ chọn máy bơm số \(5\). Bồn hoa số \(5\) được tưới và nước của máy bơm số \(5\) sẽ chảy qua các bồn hoa thứ \(2,6,7,1\) nếu máy bơm chạy \(2\) phút. Ta mất \(c_2 = 2\) VND.
Ta sẽ chọn máy bơm số \(1\). Bồn hoa số \(1\) được tưới Nước của máy bơm số \(1\) sẽ các bồn hoa thứ \(8\) và thứ \(4\) nếu máy bơm chạy \(2\) phút. Ta mất thêm \(c_2 = 2\) VND.
Ta sẽ chọn máy bơm số \(3\). Nó mất \(1\) phút để tưới cho bồn hoa thứ \(3\). Ta mất \(c_1 = 1\) VND.
Vậy ta mất ít nhất \(2+2+1 = 5\) để tưới tất cả các bồn hoa.
Bạn có thể làm theo bất kì cách nào cũng được, miễn là nó thỏa mãn số tiền cần dùng là tối thiểu.
Các bạn vui lòng bỏ qua cái hình thức của hình ảnh minh họa cho mình nhé :Đ
Test 2
2
8
1 2 4 8 10 12 24 26
1 4 3 8 2 5 6 0
8 7
5 4
2 3
2 1
7 6
5 6
4 3
6
Ta sẽ chọn máy bơm số \(2\). Bồn hoa số \(2\) được tưới và nước của máy bơm số \(2\) sẽ chảy qua các bồn hoa thứ \(1\) và thứ \(3\) nếu máy bơm chạy \(2\) phút. Ta mất \(c_2 = 2\) VND.
Ta sẽ chọn máy bơm số \(5\). Bồn hoa số \(5\) được tưới và nước của máy bơm số \(5\) sẽ chảy qua các bồn hoa thứ \(4\) và thứ \(6\) nếu máy bơm chạy \(2\) phút. Ta mất \(c_2 = 2\) VND.
Ta sẽ chọn máy bơm số \(7\). Bồn hoa số \(7\) được tưới và nước của máy bơm số \(5\) sẽ chảy qua các bồn hoa thứ \(6\) và thứ \(8\) nếu máy bơm chạy \(2\) phút. Ta mất \(c_2 = 2\) VND.
Vậy ta mất ít nhất \(2+2+2 = 6\) để tưới tất cả các bồn hoa.
Bạn có thể làm theo bất kì cách nào cũng được, miễn là nó thỏa mãn số tiền cần dùng là tối thiểu.