首页 > 学院 > 开发设计 > 正文

CCF201512(2)

2019-11-06 07:35:09
字体:
来源:转载
供稿:网友

#include<stdio.h>int a[35][35];int book[35][35];int sum,m,n,c,b;int i,j;int dfs(int x,int y){	int next[4][2]={{0,1},{1,0},{0,-1},{-1,0}};	int k;	int tx=1;	int ty=1;	for(k=0;k<=3;k++)	{		tx=x+next[k][0];		ty=y+next[k][1];		while((tx>=1)&&(tx<=m)&&(ty>=1)&&(ty<=n))			{			if(a[tx][ty]==a[x][y])			{				sum++;				tx=tx+next[k][0];				ty=ty+next[k][1];			}							else			{				if(sum>=2)				{					c=x+next[k][0];					b=y+next[k][1];					for(i=sum;i>0;i--)					{						  				book[c][b]=0;						sum--;						c=c+next[k][0];						b=b+next[k][1];						}					book[x][y]=0;					break;					 				}				else					break;									}					}		sum=0;	}	return 0;}int main(){	scanf("%d %d",&m,&n);	int p,q;			for(p=1;p<=m;p++)		for(q=1;q<=n;q++)		{			scanf("%d",&a[p][q]);			book[p][q]=a[p][q];		}	for(p=1;p<=m;p++)		for(q=1;q<=n;q++)			dfs(p,q);	for(p=1;p<=m;p++)		for(q=1;q<=n;q++)			{				PRintf("%d ",book[p][q]);				if(q==n)					printf("/n");				}	return 0;		 }


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表