for(int k=0;k<=n;++k){ for(int j=0;j<=n;++j){ for(int i=0;i<=n;++i){ if(i||j||k){ if(i)f[i][j][k]+=f[i-1][j][k]*i/(i+j+k); if(j)f[i][j][k]+=f[i+1][j-1][k]*j/(i+j+k); // 此处的f[i+1][j-1][k]不是还没算出来吗。 if(k)f[i][j][k]+=f[i][j+1][k-1]*k/(i+j+k); f[i][j][k]+=(double)n/(i+j+k); } } } }