你说得对,但是我为何38分
查看原帖
你说得对,但是我为何38分
1078808
M15388049303楼主2024/8/16 09:09
#include<bits/stdc++.h>
using namespace std;
int n,m,p[51000],a[51000],j;
long long ans;
int main() {
	cin>>n>>m;
	for(int i=0;i<m;i++){
		cin>>p[i]>>a[i];
	}
	sort(p,p+m);
	while(a[j]<=n){
		n-=a[j];
		ans+=(a[j]*p[j]);
		j++;
	}
	if(n>0){
		if(a[j]>n){
			ans+=(a[j]-n)*p[j];
		}
	}
	cout<<ans;
}
2024/8/16 09:09
加载中...