#include <bits/stdc++.h>
using namespace std;
#define ll long long
#define pll pair<ll, ll>
#define pii pair<int, int>
#define fs first
#define sc second
#define pb push_back
void solve() {
    int n;
    cin>>n;
    pii a[n];
    for(int i=0;i<n;i++)cin>>a[i].sc;
    for(int i=0;i<n;i++)cin>>a[i].fs;
    sort(a,a+n,[](pii p1,pii p2){return make_pair(p1.fs+p1.sc,p1.sc)<make_pair(p2.fs+p2.sc,p2.sc);});
    vector<int> v={0};
    for(auto[x,y]:a){
        int i=upper_bound(v.begin(),v.end(),x)-v.begin();
        if(i==v.size())v.pb(v.back()+y);
        else v[i]=v[i-1]+y;
    }
    cout<<v.size()-1<<'\n';
}
int main() {
    ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
    solve();
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |