求助,第一个点WA了
查看原帖
求助,第一个点WA了
785934
sj143714楼主2022/9/25 15:30
#include <bits/stdc++.h>
using namespace std;
struct node
{
	double t;
	double y;
};
bool cmp(node a, node b)
{
	return a.y / a.t > b.y / b.t;
}
node a[100010];
int main()
{
	double sum = 0;
	int n, m;
	cin >> n >> m;
	for (int i = 1 ; i <= n ; i++)
	{
		cin >> a[i].t >> a[i].y;
	}
	sort(a + 1, a + 1 + n, cmp);
	for (int i = 1 ; i <= n ; i++)
	{
		if(a[i].t > m)
		{
			sum += ((a[i].y / a[i].t) * m);
			printf("%.2lf", sum * 1.0);
			return 0;
		}
		else
		{
			sum += a[i].y;
			m -= a[i].t;
		}
	}
	return 0;
} 
2022/9/25 15:30
加载中...