HD1009 经典贪心

来源:互联网 发布:ireader阅读器mac版 编辑:程序博客网 时间:2024/06/18 14:54
#include <iostream>#include <algorithm>#include <fstream>#include <iomanip>using namespace std;#define MAX 1000struct room{int f,j;double rate;bool operator<(room r){return rate>r.rate;}};room rooms[MAX];int main(){int m=-1,n=-1;//ifstream cin("input.txt");room r;int index;double sum;while (cin>>m>>n && m!=-1 && n!=-1){index=0;sum=0.0;for(int i=0;i<n;i++){cin>>r.j>>r.f;r.rate=r.j*1.0/r.f;rooms[i]=r;}sort(rooms,rooms+n);for (int i=0;i<n;i++){if(rooms[i].f<m){sum+=rooms[i].j;m=m-rooms[i].f;}else{sum+=m*rooms[i].rate;m=0;}}cout<<setprecision(3)<<setiosflags(ios::fixed | ios::showpoint)<<sum<<endl;m=n=-1;}return 0;}

原创粉丝点击