fork download
  1. #include <iostream>
  2. #include <iomanip>
  3. using namespace std;
  4.  
  5. int main() {
  6. int n, m;
  7. cin >> n >> m;
  8. double** x = new double* [n+1];
  9. for (int i = 0; i < n+1; i++) {
  10. x[i] = new double [2*n+1];
  11. }
  12. x[0][n] = 1;
  13. double a, b;
  14. for(int i = 1; i <= n; i++) {
  15. for(int j = n - i; j <= n + i; j++) {
  16. a = (j - 1 < 0)? 0 : x[i-1][j-1];
  17. b = (j + 1 > 2*n)? 0 : x[i-1][j+1];
  18. x[i][j] = (a + b) / 2;
  19. }
  20. }
  21. double h = (n + m > 2*n)? 0 : x[n][n+m];
  22. cout << fixed << setprecision(9) << h;
  23. for (int i = 0; i < n+1; i++) {
  24. delete []x[n-i];
  25. }
  26. delete []x;
  27. return 0;
  28. }
Success #stdin #stdout 0s 15232KB
stdin
1 1
stdout
0.500000000