个人简介

#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 还没有布置奖章展示墙。

程伟洺
程伟洺
UID 2285
已认证
42已递交
33已通过
103.4RP

TA 的小猫

小猫正在看看四周……

猫粮 1.45 kg
猫罐头 0 个