UVA 10209 - Is This Integration
2012-10-25 13:18
429 查看
题目就是给出正方形的边长,然后给出如下的一幅图,让求出不同花色的面积
本来以为用最简单的容斥原理就可以求出不同部分的面积,后来发现根本不能,看了一下题目:“要算积分吗?”我的回答差点是:要,不过后来明白了,不用积分就可以算,只需要做两条辅助线即可,CD边的中点下面正对的那条点记作E,连接AE,BE,便出现了一个三角形,然后就可以根据容斥原理求出来,
code:
#include<cstdio>
#include<cmath>
#define PI 3.141592653589
int main()
{
double a;
while(scanf(\"%lf\",&a)!=EOF)
{
double rest=4*(a*a-PI*a*a/6-sqrt(3.0)*a*a/4);
double dotted=4*(a*a-PI*a*a/4-2*(a*a-PI*a*a/6-sqrt(3.0)*a*a/4));
double striped=a*a-rest-dotted;
printf(\"%.3lf %.3lf %.3lf\\n\",striped,dotted,rest);
}
return 0;
}
本来以为用最简单的容斥原理就可以求出不同部分的面积,后来发现根本不能,看了一下题目:“要算积分吗?”我的回答差点是:要,不过后来明白了,不用积分就可以算,只需要做两条辅助线即可,CD边的中点下面正对的那条点记作E,连接AE,BE,便出现了一个三角形,然后就可以根据容斥原理求出来,
code:
#include<cstdio>
#include<cmath>
#define PI 3.141592653589
int main()
{
double a;
while(scanf(\"%lf\",&a)!=EOF)
{
double rest=4*(a*a-PI*a*a/6-sqrt(3.0)*a*a/4);
double dotted=4*(a*a-PI*a*a/4-2*(a*a-PI*a*a/6-sqrt(3.0)*a*a/4));
double striped=a*a-rest-dotted;
printf(\"%.3lf %.3lf %.3lf\\n\",striped,dotted,rest);
}
return 0;
}
相关文章推荐
- UVa 10209 - Is This Integration ?
- UVa 10209 Is This Integration ?(计算几何)
- UVa 10209 - Is This Integration ?
- UVA 10209(Is This Integration ?-容斥原理)
- uva 10209 Is This Integration ? (计算几何)
- uva 10209 Is This Integration ? (计算几何)
- UVa Problem 10209 Is This Integration? (需要积分吗?)
- uva 343 What Base Is This?
- UVA11479 Is this the easiest problem?【三角形判定+数学】
- UVa 343 - What Base Is This?
- uva 343 What Base Is This?
- UVa343 What Base Is This
- UVA343 UVALive5451 What Base Is This?【进制】
- UVa 11479 - Is this the easiest problem?
- 普通用户开通sudo权限:xxx is not in the sudoers file.This incident will be reported.的解决方法
- There is a problem with this website’s security certificate in IE
- UVALive - 7263 Today Is a Rainy Day (BFS预处理)
- Mac上HAX is not installed on this machine 的解决办法
- host is not allowed to connect to this MySql server
- HDU 2685 I won't tell you this is about number theory