12分,听取WA声一片,求救
查看原帖
12分,听取WA声一片,求救
784884
qcykevin楼主2024/7/10 09:12
#include<bits/stdc++.h>
using namespace std;
const int MAX=2*1e6+5;
struct gold
{
	int m,v;
}g[MAX];
int cmp(gold a,gold b)
{
	return a.v*b.m>b.v*a.m;
}
int main()
{
	int n,t;
	cin>>t>>n;
	for(int i=1;i<=n;i++)
	{
		cin>>g[i].m>>g[i].v;
	}
	sort(g+1,g+1+n,cmp);
	int cnt=0;
	for(int i=1;i<=n;i++)
	{
		if(t<=0)
		{
			break;
		}
		if(t>=g[i].m)
		{
			cnt+=g[i].v;
			t-=g[i].m;
		}
		else
		{
			cnt+=g[i].v*(t*g[i].m); 
			t=0;
		}
	}
	cout<<cnt;
}
2024/7/10 09:12
加载中...