1852.cpp

来自「这是哈尔滨工业大学acmOJ的源代码」· C++ 代码 · 共 38 行

CPP
38
字号
/*  This Code is Submitted by wywcgs for Problem 1852 on 2005-12-21 at 11:29:41 */ 
#include <cstdio>

const int MAX = 128;
const int N_MAX = 10;

int main()
{
	double p[MAX][N_MAX];
	int n, k;
	int i, j;
	
	while(scanf("%d %d", &k, &n) != EOF) {
		if(k == 0) {
			printf("100.00000\n");
		} else {
			for(i = 1; i <= n; i++) {
				for(j = 0; j <= k; j++) {
					if(i == 1) p[i][j] = 100 / (double)(k+1);
					else {
						p[i][j] = p[i-1][j];
						if(j != 0) p[i][j] += p[i-1][j-1];
						if(j != k) p[i][j] += p[i-1][j+1];
						p[i][j] /= k + 1;
					}
				}
			}
			double r = 0;
			for(i = 0; i <= k; i++) {
				r += p[n][i];
			}
			printf("%.5lf\n", r);
		}
	}
	
	return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?