ZOJ 1543 水题 求培养皿的最小重量
View Code
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<math.h> 4 5 int cmp(const void *a,const void *b)//这里要用double貌似用int不行 6 { 7 return *(double *)a > *(double *)b ? 1 : -1; 8 } 9 10 int main() 11 { 12 int i, n, ncases; 13 double total; 14 double weight[101]; 15 16 while( scanf("%d",&ncases) != EOF) 17 { 18 for(i=0; i<ncases; i++) 19 { 20 scanf("%lf", &weight[i]); 21 } 22 qsort(weight,ncases,sizeof(weight[0]),cmp); 23 total = weight[ncases-1]; 24 for(i=ncases-2; i>=0; i--) 25 { 26 total = 2*sqrt(total*weight[i]); 27 } 28 printf("%.3lf\n",total); 29 } 30 return 0; 31 }