USACO 1.3.1 Mixing Milk

来源:互联网 发布:编程基础入门 编辑:程序博客网 时间:2024/06/06 02:03
/*ID:wconveyPROG:milkLANG:C++*/#include<iostream>#include<cstdio>using namespace std;struct node{       int p,a;}array[5100];int cmp(const void *x,const void *y){if(((struct node *)x)->p!=((struct node *)y)->p)return  ((struct node *)x)->p-((struct node *)y)->p;elsereturn ((struct node *)x)->a-((struct node *)y)->a;}int main(){freopen("milk.in","r",stdin);freopen("milk.out","w",stdout);int i,n,m,ans=0,cnt;    scanf("%d %d",&n,&m);for(i=0;i<m;i++)    scanf("%d %d",&array[i].p,&array[i].a);qsort(array,m,sizeof(array[0]),cmp);cnt=n;for(i=0;cnt!=0;i++){if(cnt>array[i].a){    cnt-=array[i].a;    ans+=array[i].p*array[i].a;}else{ans+=array[i].p*cnt;cnt=0;}}printf("%d\n",ans);return 0;}

原创粉丝点击