Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<bits/stdc++.h>
- using namespace std;
- void solve()
- {
- int n,h;
- cin>>n>>h;
- pair<int,int>a[n];
- for(int i=0;i<n;i++)
- {
- cin>>a[i].second;
- }
- for(int i=0;i<n;i++)
- {
- cin>>a[i].first;
- }
- sort(a,a+n);
- int ans=0;
- h++;
- for(int i=n-1;i>=0;i--)
- {
- int req=(h+a[i].first-1)/a[i].first;
- int k1=min(req,a[i].second);
- ans+=k1;
- h-=k1*a[i].first;
- if(h<=0)
- {
- break;
- }
- }
- if(h>0)
- {
- cout<<"-1"<<endl;
- return;
- }
- cout<<ans<<endl;
- return;
- }
- int main()
- {
- int t;
- cin>>t;
- while(t--)
- {
- solve();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement