分享到plurk 分享到twitter 分享到facebook

版本 9f0a1ef5cc02989a8efe0095987de9b5be835211

contest/acm/POJ/3737

Changes from beginning to 9f0a1ef5cc02989a8efe0095987de9b5be835211

---
title: [POJ] 3737 - UmBasketella
toc: no
categories: 題解 POJ 數論 brute_force_暴力法
...

網址
====

http://poj.org/problem?id=3737

題目概述
====

給予一圓錐形表面積(含底部圓面積),求錐體最大體積。

Technique details
=================

輸入為一實數,每筆測試資料請輸出三行,分別為

- 最大體積
- 圓錐體高
- 圓錐體底部圓型半徑

輸出至小數點下第二位

輸入格式
-----

::

 30

輸出格式
------

::

  10.93
  4.37
  1.55

解題思路
======

所給予之表面積(S)可以使用,圓錐的高(h)以、底部圓半徑(r)及圓錐斜邊長(R)表示

  S = π*r `2`:sup: + π\*r\*R

  R `2`:sup: = h `2`:sup: + r `2`:sup:

由兩式可化簡得 r, h 關係(略),而錐體體積可表示為

  (h\*π\*r `2`:sup:)/3

與前面化簡之 r, h 之關係式可將錐形體積由一變數表示(r or h)

將 r (or h) 由接近 0 之數字(ex. 0.0001)開始增加,求錐形體積直到曲線頂點(最大值)即為答案

注意增加數字之大小,以達成精準度要求