求助,为啥输出500??
查看原帖
求助,为啥输出500??
948410
dws_rwhy楼主2023/6/6 11:49
#include <bits/stdc++.h>
using namespace std;
int n,t;
float ans;
struct p
{
	int m,v;
}a[100];
bool cmp(p a, p b)
{
	return a.v*b.m>b.v*a.m;
}
int main()
{
	int i; 
	cin >> n >> t;
	int temp=t;
	for(int i=0;i<n;i++)
	{
	cin >> a[i].m >> a[i].v;
	sort(a,a+n,cmp);
		}
	for(int i=0;i<n;i++)
	{
		if(a[i].m>temp) break;
		temp-=a[i].m;
		ans+=a[i].v;
	if(i<n) ans+=1.0*temp/a[i].m*a[i].v;
	} 
	cout << ans;
	return 0;
 } 
2023/6/6 11:49
加载中...