Problem Description
Input
Output
Example Input
1
7 2
3 3
4 4
Example Output
2.33
#include<stdio.h>
int main()
{
int i,j,t,n,m,k,c,q;
int p[1001],w[1001];
double sum;
scanf("%d",&c);
for(k=1;k<=c;k++)
{
scanf("%d%d",&n,&m);
for(i=0;i<m;i++)
scanf("%d%d",&p[i],&w[i]);
for(i=0;i<m;i++)//选择排序降序排列;
for(j=i+1;j<m;j++)
if(p[i]>p[j])
{
t=p[i];p[i]=p[j];
p[j]=t;
q=w[i];w[i]=w[j];
w[j]=q;
}
sum=0;//记录能买到的最多的大米;
for(i=0;i<m;i++)
{
if(n>=p[i]*w[i])
{
sum+=w[i];
}
else
{
sum+=(double)n/p[i];
}
n-=p[i]*w[i];
if(n<=0)
break;
}
printf("%.2lf\n",sum);
}
}