hdu 2570 迷瘴
View Code
1 #include<iostream>
2 #include<cstdio>
3 #include<algorithm>
4 using namespace std;
5 int cmp(int x,int y)
6 {
7 return x<y;
8 }
9 int main()
10 {
11 int C,arr[110];
12 scanf("%d",&C);
13 while(C--)
14 {
15 int n,v,w;
16 scanf("%d %d %d",&n,&v,&w);
17 for(int i=1;i<=n;i++)
18 scanf("%d",&arr[i]);
19 sort(arr+1,arr+1+n,cmp);
20 int temp=0,i;
21 double ans=0;
22 for(i=1;i<=n;i++)
23 {
24 temp+=arr[i];
25 if(temp>w*i)
26 break;
27 ans=(temp*1.0/100)/i;
28 }
29 printf("%d %.2lf\n",(i-1)*v,ans);
30 /*
31 double ans=0,temp,temp1=arr[1]*1.0/100;
32 if(temp1>w*1.0/100)
33 printf("0 0.00\n");
34 else if(n==1)
35 printf("%d %.2lf\n",v,temp1);
36 else
37 {
38 int i;
39 ans=temp1;
40 temp=(arr[1]*1.0/100)*v;
41 for(i=2;i<=n;i++)
42 {
43 temp+=(arr[i]*1.0/100)*v;
44 temp1=temp*1.0/(v*i);//浓度
45 if(temp1>w*1.0/100)
46 break;
47 ans=temp*1.0/(v*i);
48 }
49 printf("%d %.2lf\n",(i-1)*v,ans);
50 //printf("%lf\n",w*1.0/100);
51 }*/
52 }
53 system("pause");
54 return 0;
55
2 #include<cstdio>
3 #include<algorithm>
4 using namespace std;
5 int cmp(int x,int y)
6 {
7 return x<y;
8 }
9 int main()
10 {
11 int C,arr[110];
12 scanf("%d",&C);
13 while(C--)
14 {
15 int n,v,w;
16 scanf("%d %d %d",&n,&v,&w);
17 for(int i=1;i<=n;i++)
18 scanf("%d",&arr[i]);
19 sort(arr+1,arr+1+n,cmp);
20 int temp=0,i;
21 double ans=0;
22 for(i=1;i<=n;i++)
23 {
24 temp+=arr[i];
25 if(temp>w*i)
26 break;
27 ans=(temp*1.0/100)/i;
28 }
29 printf("%d %.2lf\n",(i-1)*v,ans);
30 /*
31 double ans=0,temp,temp1=arr[1]*1.0/100;
32 if(temp1>w*1.0/100)
33 printf("0 0.00\n");
34 else if(n==1)
35 printf("%d %.2lf\n",v,temp1);
36 else
37 {
38 int i;
39 ans=temp1;
40 temp=(arr[1]*1.0/100)*v;
41 for(i=2;i<=n;i++)
42 {
43 temp+=(arr[i]*1.0/100)*v;
44 temp1=temp*1.0/(v*i);//浓度
45 if(temp1>w*1.0/100)
46 break;
47 ans=temp*1.0/(v*i);
48 }
49 printf("%d %.2lf\n",(i-1)*v,ans);
50 //printf("%lf\n",w*1.0/100);
51 }*/
52 }
53 system("pause");
54 return 0;
55