(vanchuyen.*)
Testcase: link tải
Sau khi đóng gói xong \(n\) gói quà có trọng lượng lần lượt là \(a_{1},\ a_{2},\ ...,\ a_{n}\); ông Nam dùng một chiếc xe chuyên dụng để chuyên chở các gói quà đi làm từ thiện. Chiếc xe có thể chở được tối đa một lượng đúng bằng \(s\). Ông Nam muốn chọn \(m\ (1 \leq m \leq n)\) gói quà có tổng trọng lượng đúng bằng \(s\) nhằm tăng hiệu quả của việc chuyên chở.
Yêu cầu: Bạn hãy giúp ông Nam tính toán xem có tìm được \(m\) gói quà trong \(n\) gói quà trên (các gói quà không nhất thiết phải liên tiếp nhau) để có trọng lượng đúng bằng \(s\) cho trước hay không?
Dữ liệu vào:
+ Dòng đầu tiên ghi hai số nguyên dương \(n\) và \(s\);
+ Dòng tiếp theo ghi trọng lượng của \(n\) gói quà lần lượt là \(a_{1}\ ,a_{2}\ ,...,a_{n}\ (0 \leq a \leq 10^{12};\ 0 \leq i \leq n)\);
Kết quả:
+ Nếu có cách chọn được \(m\) gói quả có trọng lượng đúng bằng \(s\) thì dòng đầu tiên ghi 1; Dòng tiếp theo ghi lần lượt trọng lượng các gói quà được chọn. Nếu có nhiều phương án chỉ cần ghi một phương án bất kỳ.
+ Nếu không có cách chọn các gói quà để có trọng lượng bằng \(s\) ghi ra \(- 1\);
Ví dụ
Input | Output |
---|---|
5 6 1 2 4 3 5 | 1 1 2 3 |
5 16 1 2 4 3 5 | -1 |
Ràng buộc
+ Có 50% số test ứng với 50% số điểm có: \(n \leq 20\ ;\ 0 \leq a_{i} \leq 10^{4}\ ;\ s \leq 10^{4}\)
+ 25% số test ứng với 25% số điểm có: \(n \leq 40;0 \leq a_{i} \leq 10^{12};\ s \leq 10^{12}\)
+ 25% số test còn lại ứng với 25% số điểm có: \(0 < n \leq 200;0 \leq a_{i} \leq 200;s \leq 4 \times 10^{4}\)
Code tích cực |
---|
Trong 24h |
Trong 7 ngày |
|
Trong 30 ngày |
|
Thống kê |
---|
AC/Sub: 97887/180710 Pascal: 17121 C++: 130348 Python: 33199 Lượt xem/tải tests: 38905 |