Problem Description话说上回讲到海东集团面临内外交困,公司的元老也只剩下XHD夫妇二人了。显然,作为多年拼搏的商人,XHD不会坐以待毙的。
Input输入包含多个测试实例,每个实例的第一行是两个整数v和n(v,n<100),分别表示口袋的容量和宝贝的种类,接着的n行每行包含2个整数pi和mi(0<pi,mi<10),分别表示某种宝贝的单价和对应的体积,v为0的时候结束输入。
Output对于每个测试实例,请输出XHD最多能取回多少价值的宝贝,每个实例的输出占一行。
Sample Input2 2
Sample Output5
|
#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
struct ss
{
int a,b;
}m[105];
bool cmp(ss a,ss b)
{
return a.a>b.a;
}
int main()
{
int a,b,c,d,e,f;
while(cin>>a)
{
if(a==0)
break;
cin>>b;
for(c=0;c<b;c++)
{
cin>>m[c].a>>m[c].b;
}
sort(m,m+b,cmp);
c=0;e=0;
while(a&&c<b)
{
if(a>m[c].b)
{
e=e+m[c].a*m[c].b;
a=a-m[c].b;
}
else
{
e=e+a*m[c].a;
break;
}
c++;
}
cout<<e<<endl;
}
return 0;
}