2812:Extrusion
keyword
平面幾何 多角形 面積 C++
概要
角柱の底面と体積が与えられたとき、高さを求める問題。
底面積を計算するだけ。いつもの様に符号付き面積で三角形をhogehogeする。
double xs[1001], ys[1001]; int main(){ int n, i; double vol, ans, area; while(scanf("%d",&n)){ if(n<3) break; REP(i,n){ scanf("%lf%lf",xs+i,ys+i); } xs[n] = xs[0]; ys[n] = ys[0]; scanf("%lf", &vol); area = 0; REP(i,n){ area += 0.5*(xs[i]*ys[i+1] - ys[i]*xs[i+1]); } ans = vol / fabs(area); printf("BAR LENGTH: %.2f\n",ans); } return 0; }