#include <iostream>
#include <cstdio>
#include <algorithm>
using namespace std;
struct inp
{int x,y;
double c;
}node[1005];
int cmp(inp a,inp b){
return a.c>b.c;
}
int main()
{
int m,n,i;
double j;
while(scanf("%d%d",&m,&n)!=EOF){
if(m==-1&&n==-1) break;
for(i=0;i<n;i++){
cin>>node[i].x>>node[i].y;
node[i].c=node[i].x/(double)node[i].y;}
sort(node,node+n,cmp);
j=0;
for(i=0;i<n;i++){
if(m>=node[i].y){
j+=node[i].x;
m-=node[i].y;
}
else{
j+=m*node[i].c;
break;
}
}
printf("%.3lf\n",j);
}
return 0;
}
hdu1009FatMouse's Trade
最新推荐文章于 2021-05-09 21:32:11 发布