あなたは水でいっぱいに満たされているスイミングプールを持っています。空にする必要がありますが、効率的な方法を考えることはできません。あなたは赤いソロカップを使うことにしました。カップをいっぱいまで繰り返し満たし、プールの外に捨てます。
チャレンジ
プールを空にするのにどれくらい時間がかかりますか?
入力
[shape of pool] [dimensions] [shape of cup] [dimensions] [speed]
shape of pool:これらの文字列のいずれかになりますcircle、triangleまたはrectangle。これらは実際には、円柱、三角柱、四角柱の3次元形状を指していることに注意してください。dimensions形状によって異なります。- サークル:
[radius] [height]。体積=πr 2 h - 三角形:
[base] [height] [length]。体積= 1/2(bh)*長さ - 長方形:
[width] [length] [height]ボリューム= lwh
- サークル:
shape of cupそして、dimensions同じように動作します。カップは、円、三角形、または長方形のいずれかです。speed数秒で1杯の水をいっぱいにするのに要する時間です。
出力
プールを空にするのにかかる秒数。これは、最も近い秒に丸めることができます。
ノート
- 入力に単位はありません。すべての距離単位は同じであると想定されます(形状の高さはインチで、幅はフィートではありません)。
- には3.14を使用し
piます。 - 入力は、文字列と浮動小数点数で構成されます。
- 雨は降りません。水は追加されません。
- あなたは持っている非常に着実に手を。毎回カップをつばまで正確に満たし、決してこぼさないようにします。
- 終わりに近づくと、一杯の水をすくうのが難しくなります。これについて心配する必要はありません。あなたは非常に強いので、プールを横に傾けることができます(もう時間を使い果たすことなく)。
- 計算を行うときはいつでも、最も近い100分の1に丸めても構いません。最終回答は正確である必要はありません。
テストケース
入力:triangle 10 12.25 3 circle 5 2.2 5
出力:10
最後のスクープに残っているのは172.7未満ですが、空にするのにまだ5秒かかります。
入力:triangle 5 87.3 20001 rectangle 5.14 2 105.623 0.2
出力:804.2
- 各計算後、最も近い100分の1に丸める必要があります。
- 最終的な計算が切り上げられ 804.2に804.05567から。これは、最後の少しの水を空にしなければならないためです。
ルール
- 完全なプログラムまたは機能を作成できます。
- 入力は、stdinまたは関数パラメーターから取得する必要があります。出力は、stdoutを介して出力されるか、返されます。
- 入力形式は、サブミットで指定する限り、再配置できます。文字列「circle」、「triangle」、および「rectangle」も短縮できます。
- ボリュームまたはエリアを含むライブラリおよび組み込み関数は許可されていません。
得点
これはcode-golfです。最小バイト数での送信が優先されます。