⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 2339.txt

📁 北大ACM题目例程 详细的解答过程 程序实现 算法分析
💻 TXT
字号:


#include <stdio.h>
#include <string.h>

char a[103][103],b[103][103];

char get(int i,int j)
{
	switch(a[i][j])
	{
	case 'S':
		if(a[i][j-1]=='R')
			return 'R';
		if(a[i][j+1]=='R')
			return 'R';
		if(a[i-1][j]=='R')
			return 'R';
		if(a[i+1][j]=='R')
			return 'R';
		return 'S';
	case 'R':
		if(a[i][j-1]=='P')
			return 'P';
		if(a[i][j+1]=='P')
			return 'P';
		if(a[i-1][j]=='P')
			return 'P';
		if(a[i+1][j]=='P')
			return 'P';
		return 'R';
	case 'P':
		if(a[i][j-1]=='S')
			return 'S';
		if(a[i][j+1]=='S')
			return 'S';
		if(a[i-1][j]=='S')
			return 'S';
		if(a[i+1][j]=='S')
			return 'S';
		return 'P';
	}
}

int main()
{
	int i,j,k,h,t;
	int r,c,n;
	scanf("%d",&t);

	for(k=0;k<t;k++)
	{
		scanf("%d%d%d",&r,&c,&n);
		memset(a,0,103*103);
		memset(b,0,103*103);
		for(i=1;i<=r;i++)
			scanf("%s",&a[i][1]);

		for(h=0;h<n;h++)
		{
			for(i=1;i<=r;i++)
			{
				for(j=1;j<=c;j++)
				{
					b[i][j] = get(i,j);
				}
			}
			memcpy(a,b,103*103);
		}
		for(i=1;i<=r;i++)
			printf("%s\n",&b[i][1]);
		printf("\n");
	}
	return 0;
}


⌨️ 快捷键说明

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