87分求助
查看原帖
87分求助
819372
Eagle2012楼主2023/12/1 10:12
#include<bits/stdc++.h>
using namespace std;

struct s{
	int d;
	long long l;
};

bool cmp(s s1, s s2){
	if(s1.d!=s2.d)
	return s1.d<s2.d;
}
int main(){
	long long n;
	int m;
	long long ans = 0;
	s a[6000];
	cin>>n>>m;
	for(int i=0;i<m;i++){
		cin>>a[i].d>>a[i].l;
	}
	
	sort(a,a+m,cmp);
	
//	for(int i=0;i<m;i++){
//		cout<<a[i].d<<" "<<a[i].l<<endl;
//	}
	for (int i=0;i<m;i++){
		if(n == 0){
			break;
		}
		for(long long j=0;j<a[i].l;j++){
			ans+=a[i].d;
			n--;
			if(n == 0){
				break;	
			}
		}
	}
	
	cout<<ans;
	
	return 0;
}
2023/12/1 10:12
加载中...