33OJ
登录 注册

个人简介

#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; 
}

奖章

题海 · 踏浪 长明 · 微火 粮仓 · 成囤 足迹 · 阔步 钻石胸甲 罐藏 · 四罐 闪闪 · 人生第一次喜+1 钻石镐 钻石靴子 钻石剑
程伟洺
程伟洺
UID 2285
已认证
65已递交
52已通过
169.55RP

TA 的小猫

小猫正在看看四周……

猫粮 4.83 kg
猫罐头 0 个