小欧拿了个杯子排成了一排,其中有个杯子装满了水,剩余的个杯子为空的。小欧每回合的操作如下: 1. 随机选择一个杯子。 2. 杯子是空的。回合直接结束。 3. 杯子是满的。如果小欧上一回合喝过了水,则回合结束;否则将喝完这杯水,回合结束。 小欧想知道,她喝完所有水的回合数期望是多少?
区块链毕设网qklbishe.com为您提供问题的解答
小欧拿了个杯子排成了一排,其中有个杯子装满了水,剩余的个杯子为空的。小欧每回合的操作如下:
1. 随机选择一个杯子。
2. 杯子是空的。回合直接结束。
3. 杯子是满的。如果小欧上一回合喝过了水,则回合结束;否则将喝完这杯水,回合结束。
小欧想知道,她喝完所有水的回合数期望是多少?
int main() {int n, k;cin>>n>>k;double ans = 0;vector<double> dp(k+1,0);dp[1] = double(n)/1;for(int i=2;i<=k;i++){dp[i] = double(n)/i + 1 + dp[i-1];}cout<<dp[k]<<endl;}
我这个为啥只能过11/20呀,错误的判例只差了0.03的误差,说明应该是double的处理有问题?
编辑于 今天 19:43:27
以上就是关于问题小欧拿了个杯子排成了一排,其中有个杯子装满了水,剩余的个杯子为空的。小欧每回合的操作如下:
1. 随机选择一个杯子。
2. 杯子是空的。回合直接结束。
3. 杯子是满的。如果小欧上一回合喝过了水,则回合结束;否则将喝完这杯水,回合结束。
小欧想知道,她喝完所有水的回合数期望是多少?的答案
欢迎关注区块链毕设网-
web3一级市场套利打新赚钱空投教程
区块链NFT链游项目方科学家脚本开发培训