Gửi bài giải

Điểm: 10,00 (OI)
Giới hạn thời gian: 2.0s
Giới hạn bộ nhớ: 256M
Input: stdin
Output: stdout

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

Bạn là nhân viên tại một cửa hàng hoa, nơi cung cấp dịch vụ cắm hoa nghệ thuật. Bài toán được giao là:

  • Cửa hàng có ~n~ bông hoa khác nhau. Mỗi bông hoa ~i~ có:

    • Chiều cao: ~h[i]~,
    • Giá trị thẩm mỹ: ~v[i]~.
  • Ngoài ra, bạn có ~m~ chiếc lọ. Mỗi chiếc lọ ~j~ có chiều cao tối thiểu để có thể cắm bông hoa lên: ~l[j]~.

Yêu cầu:
  1. Mỗi bông hoa chỉ được sử dụng một lần.
  2. Mỗi lọ chỉ có thể cắm một bông hoa.
  3. Bông hoa ~i~ chỉ được cắm vào lọ ~j~ nếu ~h[i] >= l[j]~.
  4. Hãy tính tổng giá trị thẩm mỹ lớn nhất có thể đạt được.
Dữ liệu vào (Input):
  • Dòng đầu tiên chứa hai số nguyên ~n~ ~(1 ≤ n ≤ 1000)~ và ~m~ ~(1 ≤ m ≤ 1000)~: số bông hoa và số chiếc lọ.
  • Dòng thứ hai chứa ~n~ số nguyên: chiều cao của từng bông hoa ~(h[1], h[2], ..., h[n])~.
  • Dòng thứ ba chứa ~n~ số nguyên: giá trị thẩm mỹ của từng bông hoa ~(v[1], v[2], ..., v[n])~.
  • Dòng thứ tư chứa ~m~ số nguyên: chiều cao tối thiểu của từng lọ ~(l[1], l[2], ..., l[m])~.
Dữ liệu ra (Output):

In ra một số nguyên duy nhất: tổng giá trị thẩm mỹ lớn nhất.

Ví dụ:

Input

4 3
10 15 12 20
5 7 6 10
10 15 20

Output

22
Giải thích:
  • Chọn bông hoa 1 (cao 10, giá trị 5) cho lọ 1 (yêu cầu cao ≥ 10).
  • Chọn bông hoa 2 (cao 15, giá trị 7) cho lọ 2 (yêu cầu cao ≥ 15).
  • Chọn bông hoa 4 (cao 20, giá trị 10) cho lọ 3 (yêu cầu cao ≥ 20).
  • Tổng giá trị thẩm mỹ: 5 + 7 + 10 = 22.

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.