题意:给出一个w*h的矩形纸,将它剪成一个无盖圆柱,使圆柱体积最大。
题解:数学推公式类型题。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 #include<cstdio> 2 #include<cstring> 3 #include<cmath> 4 #include<algorithm> 5 using namespace std; 6 const double pi=acos(-1.0); 7 int main() 8 { 9 double w,h,x,v1,v2; 10 while(scanf("%lf%lf",&w,&h),w||h) 11 { 12 x=w/pi; 13 v1=pi*x*x/4.0*(h-x); 14 x=h/(pi+1); 15 if(x>w) 16 x=w; 17 v2=pi*x*x/4.0*w; 18 printf("%.3lf\n",max(v1,v2)); 19 } 20 return 0; 21 }