例题10-19 概率 UVa11346

来源:互联网 发布:linux expect telnet 编辑:程序博客网 时间:2024/05/08 05:07

1.题目描述:点击打开链接

2.解题思路:根据对称性,只用算上半部分即可。面积恒为S的点构成一条双曲线,事先积分算出双曲线与矩形相交的面积(设矩形面积为m),即S+Sln(m/S),用矩形面积减去这部分面积,再除以m即可。注意边界情况特殊处理。

3.代码:

#define _CRT_SECURE_NO_WARNINGS #include<iostream>#include<algorithm>#include<string>#include<sstream>#include<set>#include<vector>#include<stack>#include<map>#include<queue>#include<deque>#include<cstdlib>#include<cstdio>#include<cstring>#include<cmath>#include<ctime>#include<functional>using namespace std;double a, b, S;int main(){//freopen("test.txt", "r", stdin);int t;cin >> t;while (t--){cin >> a >> b >> S;double m = a*b;double ans;if (S >= m)ans = 0.0;//边界情况一else if (S == 0)ans = 1.0;//边界情况二elseans = (m - S - S*log(m / S)) / m;ans = 100.0*ans;printf("%.6lf%%\n", ans);}return 0;}

0 0
原创粉丝点击