1.题目描述:点击打开链接
2.解题思路:本题利用数学期望的线性性质求解:过河的时间为L/v和3L/v均匀分布,因此过河的期望是2L/v,把所有的过河期望加起来,再加上D-sum(L)即可。注意计算时要把2写成2.0或添加是double强制转换。
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; int n, D, p, L, v; int main() { //freopen("test.txt", "r", stdin); int rnd = 0; double ans = 0.0; while ((scanf("%d%d", &n, &D) == 2 && (n || D))) { ans = D; for (int i = 0; i < n; i++) { scanf("%d%d%d", &p, &L, &v); ans += 2.0 * L / v; ans -= L; } printf("Case %d: ", ++rnd); printf("%.3lf\n\n", ans); } return 0; }
原文地址:http://blog.csdn.net/u014800748/article/details/43951985