#include <iostream.h> #include <stdlib.h> #include <stdio.h> #include <fstream.h> ifstream f("mouse.in"); #define cin f int comp(const void *m,const void *n) { return ((int *)n)[0]/((int *)n)[1]-((int *)m)[0]/((int *)m)[1]; } int main() { int m,n; int a[1000][2]; int i,j; while(cin>>m>>n) { if (m==-1 && n==-1) return 0; for(i=0;i<n;i++) cin>>a[i][0]>>a[i][1]; qsort(a,n,2*sizeof(int),comp); float k=(float)m; i=0; float Msum=0.0; //for(i=0;i<n;i++) //cout<<a[i][0]<<" "<<a[i][1]<<endl; //i=0; while(1) { if(k-(float)a[i][1]>0.00001) { Msum=Msum+a[i][0]; //i++; k=k-(float)a[i][1]; i++; } else { Msum=Msum+k*((float)((float)a[i][0]/a[i][1])); break; } } //cout<<Msum<<endl; printf("%0.3f\n",Msum); } }

评论