88分,RE#2,问问哪里错了?
查看原帖
88分,RE#2,问问哪里错了?
466596
MorningStarCzy楼主2024/2/27 21:02
#include<bits/stdc++.h>
using namespace std;
struct node{
	int p,a;
}cow[5005];
bool cmp(node x,node y)
{
	return x.p<y.p;
}
int main()
{
	int n,m,ans=0,k=0;
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++)
		scanf("%d%d",&cow[i].p,&cow[i].a);
	if(n==0){cout<<0;return 0;}
	sort(cow+1,cow+m+1,cmp);
	int i=1;
	while(k<=n&&i<=n)
	{
		if(k+cow[i].a>n){ans+=(n-k)*cow[i].p;break;}
		else ans+=cow[i].a*cow[i].p,k+=cow[i].a;
		i++;
	}
	cout<<ans;
	return 0;
}
2024/2/27 21:02
加载中...