90pts玄关
查看原帖
90pts玄关
1039691
NaCl_0_9H2O楼主2024/3/2 09:19

贪心,wa on #2

#include<bits/stdc++.h>
using namespace std;
long long n,m;
bool f[201];
double av,ac;
struct r{
	double v,c;
}a[201];
bool kk(r x,r y){
	return x.v/x.c>y.v/y.c;//浓度
}
bool kk2(r x,r y){
	return (a[0].v+x.v)/(a[0].c+x.c)>(a[0].v+y.v)/(a[0].c+y.c);//稀释程度
}
int main(){
	cin>>n>>m;
	for(int i=0;i<n;i++)cin>>a[i].v;
	for(int i=0;i<n;i++)cin>>a[i].c;
	sort(a,a+n,kk);
	sort(a+1,a+n,kk2);
	for(int i=0;i<m;i++)av+=a[i].v,ac+=a[i].c;
	cout<<fixed<<setprecision(3)<<av/ac;
	return 0;
} 
2024/3/2 09:19
加载中...