题目地址:http://ac.jobdu.com/problem.php?cid=1040&pid=22
C语言源码:
#include<stdio.h>
#include<stdlib.h>
int cmp(const void *a,const void *b)
{
return *(double *)a-*(double *)b;
}
int main()
{
int c,n,v,w,i,num;
double p[101],concen;
while(scanf("%d",&c)!=EOF)
{
while(c)
{
c--;
scanf("%d %d %d",&n,&v,&w);
for(i=0;i<n;i++)
scanf("%lf",&p[i]);
qsort(p,n,sizeof(p[0]),cmp);
num=0;
concen=0;
i=0;
while(i<n&&((concen*num+p[i])/(num+1)<=w))
{
concen=(concen*num+p[i])/(num+1);
num++;
i++;
}
if(num==0)
printf("0 0.00\n");
else
printf("%d %.2lf\n",num*v,concen/100);
}
}
}