#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... |