早教吧 育儿知识 作业答案 考试题库 百科 知识分享

比如说我在一个竞技场里PK,赢了得1分,再赢得2分,4分,8分……直到连赢十场,重新开始,输了也重新累计,现在要计算我15场比赛平均能获得几分?最好可以用EXCEL做.一楼的回答真是看不懂…………

题目详情
比如说我在一个竞技场里PK,赢了得1分,再赢得2分,4分,8分……直到连赢十场,重新开始,输了也重新累计,现在要计算我15场比赛平均能获得几分?最好可以用EXCEL做.
一楼的回答真是看不懂……………………………………………………
▼优质解答
答案和解析
如果每次PK赢的概率为0.5,那么答案约为28.7549.
我是用C++来写的,不过用EXCEL也可以实现.
#include
using namespace std;
double score[11];
double dp[10][101];
bool done[10][101];
double pwin = 0.5;
double dodp(int last ,int left)
{
if(left == 0)
return 0;
if(done[last][left])
return dp[last][left];
done[last][left] = true;
dp[last][left] = 0;
dp[last][left] += pwin * (dodp((last + 1) % 10 ,left - 1) + score[last + 1]);
dp[last][left] += (1.0 - pwin) * dodp(0 ,left - 1);
return dp[last][left];
}
main()
{
score[1] = 1;
for(int i = 2 ; i