标签:
边长是L的正方形,然后两个半径为L的圆弧和中间半径为L的圆相交。求阴影部分面积。
以中间圆心为原点,对角线为xy轴建立直角坐标系。
然后可以联立方程解出交点。
交点是$(\frac{\sqrt{7} L}{4\sqrt{2}},\frac{L}{4\sqrt{2}})$。
然后用余弦定理求角度、就可以求扇形面积。
阴影部分的一块=半圆-扇形*2-(大扇形-三角形)*2。
具体可以自己画图画一下。
#include <cstdio> #include <cmath> #define dd double #define sf(a) scanf("%d",&a) #define sqr(x) ((x)*(x)) const dd pi=acos(-1.0); using namespace std; int main() { int t; sf(t); while(t--){ int l; sf(l); dd h=l/sqrt(2),b=l/2.0,l2=sqr(l); dd y=h/4.0,x=y*sqrt(7); dd b2=sqr(b),a2=b2,c2=sqr(x-b)+sqr(y); dd jd=acos((a2+b2-c2)/sqrt(a2)/b/2.0); dd s1=jd*b2; dd jd2=acos((l2+sqr(h)-a2)/l/h/2.0); dd s2=jd2*l2/2; dd s3=h*x/2.0; dd ss=(s2-s3)*2.0; dd by=pi*b2/2.0; printf("%.2f\n",(by-ss-s1)*2); } }
标签:
原文地址:http://www.cnblogs.com/flipped/p/5785949.html