题目:https://vjudge.net/problem/469269/origin
题意:求阴影面积
思路:三角函数
代码:
见http://blog.youkuaiyun.com/pnan222/article/details/52275172
(图画出来也就出来
了
#include<bits/stdc++.h>
using namespace std;
int main()
{
int T;
double L;
cin>>T;
while(T--)
{
scanf("%lf",&L);
double A = acos(5.0*sqrt(2) / 8.0);
double B = asin(2.0 * sin(A));
//cout<<A<<endl<<B<<endl;
double S1 = 1/2.0 * 2.0 * A *L*L;
double S2 = 1/2.0 * 2.0 * B *(L/2)*(L/2);
//cout<<S1<<endl<<S2<<endl;
//计算三角形的面积
double a = L,b = L/2,c = L*sqrt(2.0)/2;
double p = (a+b+c)/2.0;
double S3 = sqrt(p*(p-a)*(p-b)*(p-c));
//cout<<S3<<endl;
double S = S2+2*S3-S1;
printf("%.2f\n",S*2);
}
}

本文通过三角函数的方法解决了一个求阴影面积的问题。使用了包括余弦反函数、正弦反函数等数学工具来确定角度,并据此计算出各个部分的面积,最终得到阴影区域的总面积。
555

被折叠的 条评论
为什么被折叠?



