题目不难
大概就是排序之后模拟消费
这是不是传说中的贪心啊……
缅怀一下大地震中的同胞吧~
#include<stdio.h>
int main() {
int C,n,m,p[1010],h[1010],t;
int i,k,j;
double r;
scanf("%d",&C);
while(C--) {
scanf("%d %d",&n,&m);
for(i=0; i<m; i++) {
scanf("%d %d",&p[i],&h[i]);
}
for(k=m-1; k>=0; k--) {
for(i=1,t=p[0]; i<m; i++) {
if(p[i]<p[i-1]) {
t=p[i];
p[i]=p[i-1];
p[i-1]=t;
t=h[i];
h[i]=h[i-1];
h[i-1]=t;
}
}
}
for(r=0,j=0; j<m; j++) {
if((n-p[j]*h[j])>=0) {
r=r+h[j];
n=n-p[j]*h[j];
} else {
r=r+double(n)/double(p[j]);
break;
}
}
printf("%.2lf\n",r);
}
return 0;
}