题干:

链接:https://ac.nowcoder.com/acm/contest/272/C
来源:牛客网
 

有一个盒子,里面有一个黑球和一个白球。每次随机取出盒子中的一个球,并将两个与取出球同色的球放进盒子(就是随机一种颜色将其个数+1)。

求n次取球后,盒子中白色球数目的期望。

输入描述:

输入一个整数n,表示取球次数。

输出描述:

输出一个实数,表示n次取球后白球数目的期望。答案保留7位小数。

示例1

输入

复制

2

输出

复制

2.0000000

说明

若第一次取出白球:

放入两个白球,则现在有一个黑球两个白球,概率为1/2。

若第二次取出白球,则现在有一个黑球三个白球,概率为1/2*2/3=1/3,期望个数为1/3*3=1;

若第二次取出黑球,则现在有两个黑球两个白球,概率为1/2*1/3=1/6,期望个数为1/6*2=1/3。

若第一次取出黑球:

放入两个黑球,则现在有两个黑球一个白球,概率为1/2。

若第二次取出黑球,则现在有三个黑球一个白球,概率为1/2*2/3=1/3,期望个数为1/3*1=1/3;

若第二次取出白球,则现在有两个黑球两个白球,概率为1/2*1/3=1/6,期望个数为1/6*2=1/3。

所以白球期望数目为2个。

备注:

0≤n≤106。

解题报告:

AC代码:

#include<bits/stdc++.h>
using namespace std;

int main()
{
    int n;
    cin>>n;
    printf("%.7f\n",1.0*n/2+1);
    return 0 ;
}