您的位置:首页 > 其它

zoj-1051

2013-04-22 18:44 211 查看
#include<stdio.h>
#include<memory.h>
int main()
{
	//freopen("d:\\test.txt","r",stdin);
	int t,d[16],a[22][22],b[22][22],day;
	char arr[4]={'.','!','X','#'};
	scanf("%d",&t);
	while(t--)
	{
		memset(a,0,sizeof(a));
		memset(b,0,sizeof(b));
		scanf("%d",&day);
		int i,j;
		for(i=0;i<16;++i)
			scanf("%d",&d[i]);
		for(i=1;i<=20;++i)
			for(j=1;j<=20;++j)
				scanf("%d",&a[i][j]);
		while(day--)
		{
			for(i=1;i<=20;++i)
				for(j=1;j<=20;++j)
				{
					int k=a[i][j]+a[i+1][j]+a[i][j+1]+a[i-1][j]+a[i][j-1];
					b[i][j]=a[i][j]+d[k];
					if(b[i][j]>3)
						b[i][j]=3;
					if(b[i][j]<0)
						b[i][j]=0;
				}
			memcpy(a,b,sizeof(b));
		}
		for(i=1;i<=20;++i)
		{
			for(j=1;j<=20;++j)
				printf("%c",arr[a[i][j]]);
			printf("\n");
		}
		if(t)
			printf("\n");
	}
	return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: