Đóng gói

Xem dạng PDF

Gửi bài giải

Điểm: 20,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, PyPy, Python, Scratch

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Kho hàng của một công ty vận chuyển có ~n~ kiện hàng đang đóng gói. Khối lượng hiện tại của ~n~ kiện hàng lần lượt là các số nguyên dương ~a_1, a_2, \dots, a_n~. Công ty đang có ~m~ gói hàng chờ để bổ sung vào ~n~ kiện hàng. Khối lượng của ~m~ gói hàng lần lượt là các số nguyên dương ~b_1, b_2, \dots, b_m~. Bờm có nhiệm vụ xếp lần lượt ~m~ gói hàng vào ~n~ kiện hàng theo quy ước: ở lượt xếp gói hàng thứ ~i~ (~i = 1 \div m~) chỉ chọn một trong hai cách sau:

  • Bỏ qua (không xếp) gói hàng thứ ~i~ (có khối lượng ~b_i~);
  • Xếp gói hàng thứ ~i~ vào kiện hàng thứ ~j~ (~j = 1 \div n~) nếu từ kiện hàng thứ ~1~ đến kiện hàng thứ ~j~ chưa từng được xếp gói hàng nào trước đó.

Công việc kết thúc sau khi Bờm xếp xong gói hàng thứ ~m~ hoặc kiện hàng thứ ~n~. Ban quản lý lấy khối lượng nhỏ nhất của ~n~ kiện hàng để tính tiền thưởng cho Bờm. Vì có nhiều cách xếp các gói hàng nên để có tiền thưởng cao hơn thì Bờm chọn cách xếp để kiện hàng có khối lượng nhỏ nhất đạt giá trị lớn nhất.

Yêu cầu: Tính giá trị lớn nhất có thể của kiện hàng có khối lượng nhỏ nhất.

Input

  • Dòng đầu tiên có 2 số nguyên dương ~n~ và ~m~ (~n, m \le 10^5~);
  • Dòng thứ hai có ~n~ số nguyên dương ~a_1, a_2, \dots, a_n~ (~a_i \le 10^{12} \forall i = 1 \div n~);
  • Dòng thứ ba có ~m~ số nguyên dương ~b_1, b_2, \dots, b_m~ (~b_i \le 10^{12} \forall i = 1 \div m~).

Output

  • Ghi ra một số là kết quả tìm được.

Sample Input 1

6 4
2 5 1 6 4 7
1 3 4 2

Sample Output 1

5

Bình luận

Hãy đọc nội quy trước khi bình luận.


Không có bình luận tại thời điểm này.