#include<cstdio>
#include<iostream>
using namespace std;
struct node{
int p,i;
}q[10000];
int main(){
//freopen("in.txt","r",stdin);
int i,j,x,ans=0,k,n,m;
scanf("%d%d",&n,&m);
q[0].p=1e6;q[0].i=0;
for(k=1;k<=m;k++)
scanf("%d%d",&q[k].p,&q[k].i);
for(i=1;i<m;i++)
for(j=i+1;j<=m;j++){
if(q[j].p<q[i].p){
x=q[j].p;
q[j].p=q[i].p;
q[i].p=x;
x=q[j].i;
q[j].i=q[i].i;
q[i].i=x;
}
}
for(i=1;i<=m;i++){
if(n-q[i].i>=0){
n-=q[i].i;
ans+=q[i].p*q[i].i;
}
else {
ans+=q[i].p*n;
break;
}
}
printf("%d",ans);
return 0;
}
【题解】洛谷P1208[USACO1.3] 贪心
最新推荐文章于 2022-12-02 22:19:46 发布