个人简介
#include<bits/stdc++.h>
using namespace std;
long long t,n,p;
struct stu{
long long a,b;
}a[100005];
bool cmp(stu a,stu b){
if(a.b!=b.b) return a.b<b.b;
return a.a>b.a;
}
int main(){
freopen("spread.in","r",stdin);
freopen("spread.out","w",stdout);
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
cin>>t;
while(t--){
cin>>n>>p;
for(int i=1;i<=n;i++){
cin>>a[i].a;
}
for(int i=1;i<=n;i++){
cin>>a[i].b;
}
sort(a+1,a+1+n,cmp);
long long ans=1,sum=p;
for(int i=1;i<=n;i++){
if(ans==n){
break;
}
if(ans+a[i].a>n){
sum+=min((n-ans)*a[i].b,(n-ans)*p);
ans=n;
break;
}
ans+=a[i].a;
sum+=min(a[i].a*a[i].b,a[i].a*p);
}
sum+=(n-ans)*p;
cout<<sum<<"\n";
}
return 0;
}
奖章
TA 还没有布置奖章展示墙。