[AtCoder] ABC 159 C – Maximum Volume
問題
方針
縦、横、高さの長さをそれぞれ、\( x, y, z\) とすると、\( x + y + z = L \) となります。体積を \( f(x, y) \) とすると、
\[ f(x, y) = xy(L – x – y)\]
となります。\( f(x, y) \) の停留点を求めると、\( f_x(x, y) = -2xy – y^2 + Ly = 0\) と \( f_y(x, y) = -2xy – x^2 + Lx = 0\) より、
\[(x, y) = (\dfrac{L}{3}, \dfrac{L}{3})\]
となります。\( f(x, y) \) の最小値の存在を仮定しても良いので、ヘッセ行列を調べる無くても良いです。したがって、\( \dfrac{L^3}{27} \) が答えです。
コード
#include <bits/stdc++.h> using namespace std; typedef long long ll; int main() { double L; cin >> L; printf("%.8f", L * L * L / 27); return 0; }
ディスカッション
コメント一覧
まだ、コメントがありません