码迷,mamicode.com
首页 > 其他好文 > 详细

ZOJ 3866 Cylinder Candy

时间:2015-04-13 09:36:42      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:思维   几何   zoj   图形   数学   

题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5478


题面:

Cylinder Candy

Time Limit: 2 Seconds      Memory Limit: 65536 KB      Special Judge

Edward the confectioner is making a new batch of chocolate covered candy. Each candy center is shaped as a cylinder with radius r mm and height h mm.

The candy center needs to be covered with a uniform coat of chocolate. The uniform coat of chocolate is d mm thick.

You are asked to calcualte the volume and the surface of the chocolate covered candy.

Input

There are multiple test cases. The first line of input contains an integer T(1≤ T≤ 1000) indicating the number of test cases. For each test case:

There are three integers rhd in one line. (1≤ rhd ≤ 100)

Output

For each case, print the volume and surface area of the candy in one line. The relative error should be less than 10-8.

Sample Input

2
1 1 1
1 3 5

Sample Output

32.907950527415 51.155135338077
1141.046818749128 532.235830206285


解:

     今天比赛的时候,体积是积出来了,表面积死活积不出来,晚上请教了一下数学系的学弟,五分钟就搞定了,真是汗颜。推导过程,过两天再发。

先发下图形示意图。图形就是绕着x轴形成的旋转体。

技术分享


代码:

#include <iostream>
#include <cmath> 
#include <iomanip>
#define pi 4*atan(1.0) 
using namespace std;
int main()
{
	int t,r,h,d;
    cin>>t;
    while(t--)
    {
    	cin>>r>>h>>d;
    	cout<<fixed<<setprecision(12)<<2*(2*d*d*d/3.0*pi+r*d*d*pi*pi/2)+pi*((r+d)*(r+d))*(h)+pi*(r*r)*2*d<<" ";
    	cout<<fixed<<setprecision(12)<<2*(pi*pi*d*r+2*pi*d*d)+2*pi*r*r+2*pi*(r+d)*h<<endl;
    }
	return 0;
} 



ZOJ 3866 Cylinder Candy

标签:思维   几何   zoj   图形   数学   

原文地址:http://blog.csdn.net/david_jett/article/details/45015343

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!