全A了,代码没存。第三题醉汉其实不难的DP,我给个DP部分吧 思路就是你可以选择向前或者向后,所以概率是前一个位置少一步*0.5 + 后一个位置少一步*0.5 double dp[63][61]; // pos, step,  初始化成0 for(int step = 0; step <=60; ++step{    for(int pos = 1; pos <= 61; ++pos)         if(step == 0)            dp[pos][step] = 1;        else        {             dp[pos][step] = 0.5 * dp[pos + 1][step - 1] + 0.5 * dp[pos - 1][step - 1];        } }