#include<stdio.h> double per[1010], pri[1010], fo[1010]; int main() { int i, j; double a, b; while (scanf("%lf %lf", &a, &b), a != -1) { for (i = 0; i < b; i++) { scanf("%lf %lf", &fo[i], &pri[i]); per[i] = pri[i] / fo[i]; } for (i = 0; i < b - 1; i++) { for (j = 0; j <= b - 2; j++) { double con,com,cod; if (per[j] > per[j + 1]) { con = per[j]; com = fo[j]; cod = pri[j]; per[j] = per[j + 1]; fo[j] = fo[j + 1]; pri[j] = pri[j + 1]; per[j + 1] = con; fo[j + 1] = com; pri[j + 1] = cod; } } }//the price list has been sorted double food = 0;//quantity of food the mouse can get for (i = 0; i <= b - 1 ; i++) {//a is the money mouse has now if (a >= pri[i]) { food = food + fo[i]; a = a - pri[i]; } else { food = food + a / per[i]; break; } } printf("%.3lf\n", food); } return 0; }
hdu1.31
最新推荐文章于 2018-11-10 19:02:00 发布