Bet Thủ
Xem dạng PDFAll in vào a Liêm thành công, Per sẽ sử dụng tiền thắng cược để trả nợ.
Hiện tại, Per đang nợ ~n~ người. Số tiền nợ biểu diễn bởi mảng ~a~ — Per nợ người thứ ~i~ một lượng tiền là ~a_i~. Nhà cái trả tiền thắng cược cho Per ~m~ đồng tiền, mệnh giá được biểu diễn bởi mảng ~b~ — đồng thứ ~i~ có giá trị ~b_i~.
Per muốn trả một lần hết sạch nợ. Nhưng đang tự hỏi xem liệu có tồn tại cách trả nợ nào hết ~n~ người không? Per rất muốn các bạn giúp Per trả lời câu hỏi này.
Lưu ý rằng mỗi đồng tiền chỉ sử dụng một lần (tức trả người này rồi thì không thể trả người kia tờ tiền này).
Dữ liệu vào
Dòng đầu tiên chứa số nguyên ~t~ (~1 \le t \le 5~) — số lượng bộ test cần xử lý.
Dòng đầu tiên của mỗi test chứa hai số nguyên ~n~, ~m~ (~1 \le n, m \le 20~) — số lượng người mà Per nợ và số lượng tờ tiền Per có.
Dòng thứ hai của mỗi test chứa ~n~ số nguyên ~a_i~ (~1 \le a_i \le 1000~) — số tiền mà Per nợ từng người.
Dòng thứ ba của mỗi test chứa ~m~ số nguyên ~b_i~ (~1 \le b_i \le 1000~) — mệnh giá của từng tờ tiền Per có.
Kết quả
Với mỗi bộ test, in ra YES nếu tồn tại cách trả hết nợ cho tất cả ~n~ người, ngược lại in ra NO.
Ví dụ
Đầu vào:
2
1 5
8
4 2 5 1 3
2 6
9 10
5 4 8 6 3 11
Đầu ra:
YES
NO
Giải thích:
- Test ~1~: Per có thể trả cho người ~1~ bằng cách chọn tờ tiền vị trí ~(3, 5)~ hoặc ~(1, 4, 5)~, ...
- Test ~2~: Per có thể trả cho người ~1~ bằng cách chọn tờ tiền vị trí ~(1, 2)~ hoặc ~(4, 5)~, nhưng không tìm được cách trả đồng thời cho người thứ ~2~. Do đó, không thể trả hết nợ cho cả ~n~ người.
Giới hạn
Trong tất cả các test: ~1 \le t \le 5~, ~1 \le n, m \le 20~, ~1 \le a_i, b_i \le 1000~.
| Subtask | Điểm | Ràng buộc thêm |
|---|---|---|
| 1 | 20 | ~n, m \le 5~; ~a_i, b_i \le 50~; ~t \le 2~ |
| 2 | 30 | ~n, m \le 12~; ~a_i, b_i \le 200~; ~t \le 3~ |
| 3 | 50 | Không có ràng buộc thêm |
Bình luận