Đổi quà Noel

Xem PDF

Nộp bài


Điểm: 10 (thành phần)
Thời gian: 0.4s
Bộ nhớ: 256M

Tác giả:
Dạng bài

Tối nay là đêm Noel, thầy Phước quyết định tổ chức chơi board game đổi quà cho hai lớp TK21 và ITK21. Các bạn sẽ chơi tích điểm để có thể đổi các món quà hấp dẫn từ thầy.

Có tất cả \(m\) món quà, món quà thứ \(i\) được niêm yết giá là \(c_i\): số điểm cần để đổi món quà đó. Một học sinh muốn đổi phần quà có giá trị \(x\) thì số điểm tích lũy được phải lớn hơn hoặc bầng \(x\), sau khi đổi thì điểm tích lũy của học sinh đó sẽ bị trừ đi \(x\).

Có \(n\) bạn học sinh tham gia, sau khi trò chơi kết thúc, bạn thứ \(i\) nhận được số điểm \(a_i\). Quy định mỗi học sinh chỉ được dùng điểm của mình để đổi tối đa \(1\) món quà, và không được chia sẻ điểm với học sinh khác.

Chắc vì đây là lần đầu chơi board game nên các bạn học sinh được khá ít điểm, vì vậy thầy Phước quyết định cho các em được tự do giảm giá của bất kỳ món quà nào, nhưng tổng giá bị giảm của tất cả các món quà không được vượt quá \(S\). Và giá của mỗi món quà chỉ được giảm tối đa về \(0\), không được giảm thành âm.

Vì là một tập thể đoàn kết, hai lớp quyết định hợp tác với nhau để lấy được nhiều phần quà nhất có thể từ thầy. Nhưng các số liệu là quá nhiều, nên dù rất giỏi trong tư duy và tính toán nhưng các bạn TK21 cũng không thể nhẩm nhanh được phương án tối ưu. Vì thế các bạn học sinh ITK21 hãy trổ tài lập trình của mình thôi nào!

Yêu cầu: Tính xem nếu sử dụng một cách đổi quà tối ưu (thỏa mãn các yêu cầu trên) kết hợp với quyền giảm giá các món quà, thì số lượng quà tối đa có thể thu được là bao nhiêu? Và tổng số điểm ít nhất mà các bạn học sinh phải bỏ ra để thu được số quà đó là bao nhiêu? (Vì số điểm còn lại sẽ có thể được dùng cho những lần chơi board game sau, nên tất nhiên phải tiết kiệm rồi :>).

Input

  • Dòng đầu tiên chứa ba số nguyên \(n,\ m,\ S\) \((1\leq n,\ m\leq10^5,\ 0\leq S\leq10^9)\);
  • Dòng thứ hai chứa \(n\) số nguyên dương \(a_1,\ a_2,\ldots,\ a_n\) \((1\leq a_i\leq10^4, \forall i\in [1,n])\);
  • Dòng thứ ba chứa \(m\) số nguyên dương \(c_1,\ c_2,\ldots,\ c_n\) \((1\leq c_i\leq10^9, \forall i\in [1,m])\);

Output

  • In ra hai số nguyên dương \(g, t\) các nhau bởi dấu cách. Trong đó \(g\) là số món quà tối đa có thể thu được, và \(t\) là tổng số điểm ít nhất phải bỏ ra để thu được \(g\) món quà. Nếu các bạn học sinh không thể đổi được bất cứ món quà nào thì in ra \(0\ 0\).

Ví dụ

Sample input 1
2 2 20
10 12
15 10
Sample output 1
2 5
Note

Đầu tiên các bạn sẽ giảm giá của hai món quà thành \(0\) và \(5\). Sau đó bạn đầu tiên sẽ đổi món quà thứ nhất tốn \(0\) điểm, bạn thứ hai đổi món quà thứ hai tốn \(5\) điểm.


Sample input 2
5 6 3
10 2 3 1 3
8 2 6 4 2 5
Sample output 2
4 10