记录编号 279264 评测结果 AAAAAAAAAA
题目名称 迈克和手机 最终得分 100
用户昵称 Gravatarfmj 是否通过 通过
代码语言 C++ 运行时间 0.000 s
提交时间 2016-07-08 22:05:03 内存使用 0.00 MiB
显示代码纯文本
#include <iostream>
#include <cstdio>
using namespace std;
struct T{
	int x,y;
}A[11];
bool can[6][5]={{0,0,0,0,0},{0,1,1,1,0},{0,1,1,1,0},{0,1,1,1,0},{0,0,1,0,0},{0,0,0,0,0}};
char C[10];
int D[10];
int X[9]={0,1,0,1,1,-1,0,-1,-1};
int Y[9]={0,0,1,1,-1,0,-1,-1,1};
int cc(){
	freopen("CF_RD_361_A.in","r",stdin);
	freopen("CF_RD_361_A.out","w",stdout);
	int n;
	cin>>n;
	for(int i=1;i<=n;i++)
		cin>>C[i],D[i]=C[i]-'0';
	A[1].x=1;A[1].y=1;
	A[2].x=2;A[2].y=1;
	A[3].x=3;A[3].y=1;
	A[4].x=1;A[4].y=2;
	A[5].x=2;A[5].y=2;
	A[6].x=3;A[6].y=2;
	A[7].x=1;A[7].y=3;
	A[8].x=2;A[8].y=3;
	A[9].x=3;A[9].y=3;
	A[0].x=2;A[0].y=4;
	for(int i=1;i<=8;i++){
		int ok1=1;
		for(int j=1;j<=n;j++){
			int x1=A[D[j]].x+X[i],y1=A[D[j]].y+Y[i];
			if(can[y1][x1]==0)
				ok1=0;
		}
		if(ok1){
			cout<<"NO"<<endl;
			return 0;
		}
	}
	cout<<"YES"<<endl;
return 0;
}
int d=cc();
int main(){;}