题意
有一个骰子有n个面,掷到每一个面的概率是相等的,每一个面上都有相应的钱数。其中当你掷到某些面 一共m个面之一时,你有多掷一次的机会。问最后所得钱数的期望。
分析
数学期望是什么 数学期望就是一种加权平均值 
 什么意思 
 数学期望 就是我们做事情的一种期望值 由于不确定性 我们用这个期望值去描述他 
 这个值对于离散型随机变量来说就是 
 均值 
 也就是 sigma 每种可能的权*这种可能的概率 
 实验结果的均值 本质上来讲就是一个期望值 
 本题让我们求期望 
 我们分析设本题的数学期望是X 
由于数学期望是要统计所有情况的期望加和 也就是所有情况的均值加和 
我们可知 由特殊面之和概率p1+ 非特殊面之和  概率p2 + 选了特殊面重新掷 * p3 
p1 = p2 = 1/n  
p3 = 就等于所有这些加起来 表示重新掷 的数学期望 * 重新掷的概率 
那么
化简发现其实就是sum/(n−m) 
 当n==m的时候输出inf
code
#include<bits/stdc++.h>;
using namespace std;
int main()
{int n,m;while(~scanf("%d",&n)){int x,sum=0;for(int i=1;i<=n;i++){scanf("%d",&x);sum+=x;}scanf("%d",&m);for(int i=1;i<=m;i++){scanf("%d",&x);}if(sum==0){//当权值和为0的时候 也就是0.00 printf("0.00\n");continue;}else if(n==m){puts("inf");continue;}else {printf("%.2lf\n",(double)sum/(n-m));}}return 0;
}
一开始怎么也写不出 还是概率学得不好。。。