80分求助
查看原帖
80分求助
679557
dark_assassin楼主2023/1/7 17:04

RT

#include<iostream>
#include<algorithm>
#include<cstdio>
using namespace std;
int n, t;
struct _Node {
	int a, b;
	double c;
}x[105];
int cmp(_Node w, _Node v)
{
	return w.c > v.c;
}
int main()
{
	cin >> n >> t;
	for (int i = 0; i < n; i++)
	{
		cin >> x[i].a>>x[i].b;
		x[i].c = (double)x[i].b / (double)x[i].a;
	}
	sort(x, x + n, cmp);
	int tmp = t, ans = 0;
	double cnt = 0;
	while (tmp-x[ans].a >= 0)
	{
		tmp -= x[ans].a;
		cnt += x[ans].b;
		ans++;
	}
	cnt += x[ans].c * tmp;
	printf("%.2lf\n", cnt);
	return 0;
}
2023/1/7 17:04
加载中...