记录编号 217583 评测结果 AAAAAAAAAA
题目名称 [NOIP 2008]传球游戏 最终得分 100
用户昵称 GravatarLovelove_boii 是否通过 通过
代码语言 C++ 运行时间 0.003 s
提交时间 2016-01-04 20:24:20 内存使用 0.31 MiB
显示代码纯文本
/*#include <fstream>
using namespace std;
int n,m,f[31][31];
int main()
{
	ifstream cin("ballg.in");
	ofstream cout("ballg.out");
	cin>>n>>m;
	for(int i=0;i<=n;i++)
	{
		for(int j=0;j<=m;j++)
		{
			if(i==0 || j==1)
				f[i][j]=1;
			if(j>=2&&j<=n-1)
				f[i][j]=f[i-1][j-1]+f[i-1][j+1];
			if(j==1)
				f[i][j]=f[i-1][n]+f[i-1][2];
			if(j==n)
				f[i][j]=f[i-1][n-1]+f[i-1][1];
		}
	}
	cout<<f[m][1];
	return 0;
}
*/
#include <iostream> 
#include <cstdio> 
#include <cstring> 
#include <climits> 
using namespace std; 
int n,m;//n个people,传m次 
int f[31]; int g[31]; int t; 
int main() 
{ freopen("ballg.in","r",stdin); freopen("ballg.out","w",stdout); scanf("%d%d",&n,&m); f[1]=1; for(int i=1;i<=m;i++) { t=f[1]; g[n]+=t;g[2]+=t; for(int j=2;j<n;j++) { t=f[j]; g[j-1]+=t;g[j+1]+=t; } t=f[n]; g[1]+=t;g[n-1]+=t; for(int i=1;i<=n;i++) { f[i]=g[i]; g[i]=0; } } printf("%d\n",f[1]); return 0; }