关闭

hdu-2111-Saving HDU

320人阅读 评论(0) 收藏 举报
#include<stdio.h>
#include<stdlib.h>
struct 
{
int x,y;
}a[11];
int cmp(const void *a,const void *b)
{
return *(int *)b-*(int *)a;
}
int main()
{
int v,n;
while(scanf("%d",&v)&&v)
{
int i,sum=0;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%d%d",&a[i].x,&a[i].y);
qsort(a,n,sizeof(a[0]),cmp);
for(i=0;i<n;i++)
{
if(a[i].y<=v)
{
sum+=a[i].x*a[i].y;
v-=a[i].y;
}
else
{
sum+=v*a[i].x;
break;
}
}
printf("%d\n",sum);
}
return 0;
}
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:236687次
    • 积分:8111
    • 等级:
    • 排名:第2675名
    • 原创:596篇
    • 转载:55篇
    • 译文:0篇
    • 评论:5条
    最新评论