题目连接:http://120.78.128.11/Problem.jsp?pid=3266
作为签到题,还是很多人过了的,这个题的做法有两种。
1、动态规划,很简单的,看代码吧:
1 #include<cstdio> 2 #define N 11 3 double f[N][N]; 4 int main() 5 { 6 int n; 7 double a,b; 8 scanf("%d",&n); 9 scanf("%lf%lf",&a,&b); 10 f[0][0]=1; 11 for (int i=1;i<=n;++i) 12 { 13 f[0][i]=f[0][i-1]*a; 14 f[i][0]=f[i-1][0]*b; 15 } 16 for (int i=1;i<=n;++i) 17 { 18 for (int j=1;j<=n;++j) 19 { 20 f[i][j]=f[i][j-1]*a+f[i-1][j]*b; 21 } 22 } 23 /* 24 for (int i=0;i<=n;++i) 25 { 26 for (int j=0;j<=n;++j) 27 { 28 printf("%.2f ",f[i][j]); 29 } 30 puts(""); 31 }*/ 32 int q; 33 scanf("%d",&q); 34 int m,x,y; 35 while (q--) 36 { 37 scanf("%d%d%d",&m,&x,&y); 38 if (x+y==m) 39 { 40 printf("%.2f\n",f[y][x]); 41 } 42 else 43 { 44 printf("0.00\n"); 45 } 46 47 } 48 return 0; 49 }