fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. int n,k;
  6. cin>>n>>k;
  7. vector<int> a(n),b(n);
  8. for(int i=0;i<n;++i) cin>>a[i];
  9. for(int i=0;i<n;++i) cin>>b[i];
  10. int ans=0;
  11. vector<pair<int,int>> vec;
  12. for(int i=0;i<n;++i) vec.push_back({b[i],a[i]});
  13. sort(vec.begin(),vec.end());
  14. for(int i=n-1;i>=0 && k>0;--i){
  15. if(k-vec[i].second>=0){
  16. ans+=vec[i].first*vec[i].second;
  17. k-=vec[i].second;
  18. } else{
  19. ans+=vec[i].first*k;
  20. k=0;
  21. }
  22. }
  23. cout<<ans;
  24.  
  25. return 0;
  26. }
Success #stdin #stdout 0.01s 5300KB
stdin
3 6
3 1 6
2 7 4
stdout
27