#61. Phá kỷ lục Autofarm (Mã bài: GAME)

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

N màn chơi, người chơi bắt đầu ở màn 1 với cấp độ 1 và lượng máu ban đầu tự chọn. Ở mỗi màn sẽ có một số con quái vật với sức mạnh khác nhau, người chơi sẽ cần chọn giao chiến với một tập quái vật ở màn này, lưu ý rằng để qua màn cần giao chiến với ít nhất một con quái vật. Sau khi đã chọn xong, hai bên sẽ lần lượt gây sát thương cho nhau cho đến khi có một bên bị tiêu diệt. Bên quái vật sẽ tấn công trước, gây sát thương bằng tổng sức mạnh của tất cả các quái vật còn sống, người chơi sẽ mất đi lượng máu bằng lượng sát thương nhận vào, và chỉ sống sót khi lượng máu còn lại lớn hơn lượng sát thương này. Sau mỗi lượt, người chơi tiêu diệt một quái vật, tăng cấp độ lên 1 (cấp độ tối đa là M ). Sau khi tiêu diệt hết quái vật đã chọn, người chơi hồi máu bằng h[level] . Mục tiêu: tìm lượng máu ban đầu nhỏ nhất để vượt qua tất cả N màn và đạt cấp độ M .

Dữ liệu:

  • Dòng đầu chứa hai số nguyên N,M (1 \le N \le 100, 1 \le M \le 50000) .
  • Dòng thứ hai chứa M số nguyên h[1],h[2],...,h[M] (1 \le h[i] \le 10^6) .
  • N dòng tiếp theo, mỗi dòng mô tả một màn chơi gồm số K\ (1 \le K \le 2000) K số nguyên s[1],...,s[K] (1 \le s[j] \le 10^4) .

Kết quả: Một số nguyên duy nhất là lượng máu ban đầu nhỏ nhất để thắng trò chơi.

Ví dụ:

Dữ liệu:

3 4
1 2 10 11
3 6 2 3
2 11 12
4 9 11 10 5

Kết quả:

9

Giới hạn:

  • Subtask 1: Tổng số quái vật ≤ 20 (20%).
  • Subtask 2: M \le 50 (20%).
  • Subtask 3: M \le 500 (30%).
  • Subtask 4: Không ràng buộc thêm (30%).