#include<bits/stdc++.h>
#define setp(a) fixed<<setprecision(a)
#define Venti cout<<"\nVenti!\n";
#define int long long
#define il inline
using namespace std;
const int V=1e2+10;
int dx[9]={0,0,1,1,1,0,-1,-1,-1},dy[9]={0,-1,-1,0,1,1,1,0,-1};
int n,sid[V][V],loc[V][V];
char mapx[V][V];

il void creatx(void){
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			if(mapx[i][j]=='S')
				for(int k=1;k<=8;k+=2)
					if(mapx[i+dx[k]][j+dy[k]]=='E'){
						sid[i][j]=1;
						break;
					}
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			if(mapx[i][j]=='S'&&sid[i][j]!=1)
				for(int k=1;k<=8;k++)
					if(sid[i+dx[k]][j+dy[k]]==1){
						sid[i][j]=2;
						break;
					}
	return;
}

il void lock(int x,int y){
	for(int i=1;i<=8;i++)
		loc[x+dx[i]][y+dy[i]]=1;
}

il void unlock(int x,int y){
	for(int i=1;i<=8;i++)
		loc[x+dx[i]][y+dy[i]]=0;
}

il void check(void){
	
}

int dfs(int x,int y){
	for(int i=1;i<=8;i++){
		
	}
}

il void debugx(void){
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++)
			cout<<mapx[i][j]<<' ';
		cout<<'\n';
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++)
			cout<<sid[i][j]<<' ';
		cout<<'\n';
	}	
	return;
}

signed main(){
//	ios::sync_with_stdio(false);
//	cin.tie(0),cout.tie(0);
	cin>>n;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			cin>>mapx[i][j];
	creatx();
	debugx();
	return 0;
}
/*

*/

0 条评论

目前还没有评论...

信息

ID
4256
时间
1000ms
内存
256MiB
难度
5
标签
(无)
递交数
3
已通过
0
上传者