3036.txt

来自「北大ACM题目例程 详细的解答过程 程序实现 算法分析」· 文本 代码 · 共 37 行

TXT
37
字号
Source

Problem Id:3036  User Id:fzk 
Memory:136K  Time:0MS
Language:G++  Result:Accepted

Source 

#include <stdio.h>

int ans[20][40][40] = { 0 };

int main( ) {
	int i, j, k, t;
	ans[0][20][20] = 1;
	for( i=0; i<14; i++ ) {
		for( j=1; j<39; j++ )
			for( k=1; k<39; k++ ) {
				t = ans[i][j][k];
				ans[i+1][j][k-1] += t;
				ans[i+1][j][k+1] += t;
				ans[i+1][j-1][k] += t;
				ans[i+1][j-1][k-(j%2?1:-1)] += t;
				ans[i+1][j+1][k] += t;
				ans[i+1][j+1][k-(j%2?1:-1)] += t;
			}
	}
	scanf( "%d", &t );
	while( t-- ) {
		scanf( "%d", &k );
		printf( "%d\n", ans[k][20][20] );
	}
	return 0;
}


⌨️ 快捷键说明

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