为啥错了
查看原帖
为啥错了
975630
woyaoAKIOI0924PTY楼主2024/7/25 20:42
#include<bits/stdc++.h>
using namespace std;
int n,zhongliang,a[1005],b[1005],jiazhi[1005],maxi=-1e9;
double qian;
int cmp(int x,int y)
{
	return x>y;
}
int main()
{
	cin>>n>>zhongliang;
	for(int i=1;i<=n;++i)
	{
		cin>>a[i]>>b[i];
		jiazhi[i]=b[i]/a[i]; 
	}
	sort(jiazhi+1,jiazhi+n+1,cmp);
	for(int i=1;i<=n;++i)
	{
		if(a[i]*b[i]>=zhongliang)
		{
			qian+=b[i]*zhongliang;
			break;
		}
		else
		{
			zhongliang-=a[i];
			qian+=a[i]*b[i];
		}
	}
	cout<<fixed<<setprecision(2)<<qian;
	return 0;
}
2024/7/25 20:42
加载中...