Mô tả bài toán
Bạn là đội trưởng của một đội tuyển lập trình trường học tại Trùng Khánh tham dự kỳ thi CCPC. Để gắn kết tinh thần đồng đội sau kỳ thi, bạn muốn tổ chức một bữa tối tập thể. Tuy nhiên, vì ngân sách đã cạn sạch sau bữa lẩu trước kỳ thi, chi phí của bữa ăn phải được chia đều (tức là nếu có $k$ người tham gia bữa ăn với tổng chi phí là $W$, mỗi người sẽ trả $\frac{W}{k}$) cho tất cả những người tham gia.
Có $n$ người bạn cùng lớp trong đội. Mỗi người bạn tham gia bữa tối sẽ gọi đúng một món ăn. Người bạn thứ $i$ gọi một món ăn có giá $w_i$. Mỗi người bạn cũng có một giới hạn ngân sách $r_i$: nếu chi phí chia đều cuối cùng của bữa ăn vượt quá $r_i$, người bạn thứ $i$ sẽ ở lại khách sạn và đặt đồ ăn mang về.
Là đội trưởng, bạn muốn tối đa hóa số lượng bạn cùng lớp tham gia bữa tối. Mục tiêu của bạn là chọn một tập con gồm $m$ người bạn sao cho nếu mỗi người gọi món ăn tương ứng của mình, chi phí chia đều (tổng giá của $m$ món ăn chia cho $m$) không vượt quá ngân sách $r_i$ của bất kỳ ai trong số $m$ người bạn được chọn. Hãy tìm giá trị lớn nhất có thể của $m$.
Nếu không tồn tại tập con nào như vậy với $m \ge 1$, hãy in ra $0$.
Dữ liệu vào
Có nhiều bộ dữ liệu trong một tệp dữ liệu vào. Dòng đầu tiên của dữ liệu vào chứa một số nguyên $T$ ($1 \le T \le 10^5$), cho biết số lượng bộ dữ liệu.
Đối với mỗi bộ dữ liệu:
- Dòng đầu tiên chứa một số nguyên $n$ ($1 \le n \le 10^5$), biểu thị số lượng bạn cùng lớp.
- Tiếp theo là một dòng gồm $n$ số nguyên, trong đó số nguyên thứ $i$ là $w_i$ ($1 \le w_i \le 10^9$) biểu thị giá của món ăn mà người bạn thứ $i$ gọi.
- Sau đó là một dòng gồm $n$ số nguyên, trong đó số nguyên thứ $i$ là $r_i$ ($1 \le r_i \le 10^9$) biểu thị mức giá tối đa mà người bạn thứ $i$ sẵn sàng chi trả.
Dữ liệu đảm bảo tổng của $n$ trong tất cả các bộ dữ liệu không vượt quá $10^5$.
Kết quả
Đối với mỗi bộ dữ liệu, in ra một dòng chứa một số nguyên duy nhất biểu thị câu trả lời.
Ví dụ
Dữ liệu vào 1
2 5 1 2 3 4 5 5 4 3 2 1 10 3 1 4 1 5 9 2 6 5 3 5 8 9 7 9 3 2 3 8 4
Kết quả 1
3 7