UVA 11722 Joining with Friend [连续概率]
2012-10-29 18:09
323 查看
A在[S1,S2]到达,B在[T1,T2]到达,到达后都会等W分钟,问相遇的概率。
概率论课本上的题目了,列出三个方程s1<=S<=s2,t1<=T<=t2,|T-S|<=w。然后可以转化为几何图形求面积,需要讨论求解。
概率论课本上的题目了,列出三个方程s1<=S<=s2,t1<=T<=t2,|T-S|<=w。然后可以转化为几何图形求面积,需要讨论求解。
#include <string.h> #include <stdio.h> int cas, t1, t2, s1, s2, w; double area(int w){ int lc = t1+w, rc = t2+w, uc = s2-w, dc = s1-w; if (lc >= s2) return 0; if (rc <= s1) return (t2-t1)*(s2-s1); bool bl = (lc>=s1 && lc<=s2); bool br = (rc>=s1 && rc<=s2); bool bu = (uc>=t1 && uc<=t2); bool bd = (dc>=t1 && dc<=t2); if (bl&&bu) return (lc-s2)*(lc-s2)*0.5; if (bl&&br) return (t2-t1)*(s2-lc+s2-rc)*0.5; if (bd&&bu) return (s2-s1)*(uc-t1+dc-t1)*0.5; if (bd&&br) return (t2-t1)*(s2-s1)-(rc-s1)*(rc-s1)*0.5; return 0; } int main(){ scanf("%d", &cas); for (int ca = 1; ca <= cas; ca++) { scanf("%d%d%d%d%d", &t1, &t2, &s1, &s2, &w); printf("Case #%d: %.7f\n", ca, (area(-w)-area(w))/(t2-t1)/(s2-s1)); } return 0; }
相关文章推荐
- UVA 11722 Joining with Friend【概率】
- uva11722 - Joining with Friend(几何概率)
- UVA 11722 Joining with Friend 图形面积+概率
- uva 11722 - Joining with Friend(概率)
- uva 11722 - Joining with Friend(概率)
- UVA 11722 - Joining with Friend(概率)
- UVA - 11722 Joining with Friend 几何概率
- UVA - 11722 Joining with Friend (概率)
- UVa 11722 (概率 数形结合) Joining with Friend
- UVa 11722 - Joining with Friend (概率 数形结合)
- UVa 11722 Joining with Friend (几何概率 + 分类讨论)
- Uva11722 Joining with Friend
- uva 11722 Joining with Friend
- uva11722 Joining with Friend
- [uva11722&&cogs1488]和朋友会面Joining with Friend
- UVA11722(见面概率)
- UVA 11971 Polygon 多边形(连续概率)
- uva11722(概率)
- 连续概率(概率,uva 11346)
- UVA 11346 Probability 概率 (连续概率)