比赛 练习12 评测结果 AAAAAAAAA
题目名称 两只塔姆沃斯牛 最终得分 100
用户昵称 Regnig Etalsnart 运行时间 0.192 s
代码语言 C++ 内存使用 0.10 MiB
提交时间 2017-06-30 11:18:24
显示代码纯文本
#include<cstdio>
#define syy myson
using namespace std;
int pic[12][12];
int ans=0,i,j;
struct FC
{
	int face;
	int x,y;
}f,c;
int Main()
{
	freopen("ttwo.in","r",stdin);freopen("ttwo.out","w",stdout);
	f.face=1;c.face=1;
	for(i=1;i<=10;i++)
	{
		char fuck[11];
		scanf("%s",fuck);
		for(j=0;j<10;j++)
		{
			if(fuck[j]=='.')pic[i][j+1]=0;
			else if(fuck[j]=='*')pic[i][j+1]=1;
			else if(fuck[j]=='F'){f.x=i;f.y=j+1;}
			else if(fuck[j]=='C'){c.x=i;c.y=j+1;}
		}
	}
	while(1)
	{
		if(f.face==1)
		{
			if((pic[f.x-1][f.y])||(f.x==1))f.face++;
			else f.x--;
		}
		else if(f.face==2)
		{
			if((pic[f.x][f.y+1])||(f.y==10))f.face++;
			else f.y++;
		}
		else if(f.face==3)
		{
			if((pic[f.x+1][f.y])||(f.x==10))f.face++;
			else f.x++;
		}
		else if(f.face==4)
		{
			if((pic[f.x][f.y-1])||(f.y==1))f.face=1;
			else f.y--;
		}
		if(c.face==1)
		{
			if((pic[c.x-1][c.y])||(c.x==1))c.face++;
			else c.x--;
		}
		else if(c.face==2)
		{
			if((pic[c.x][c.y+1])||(c.y==10))c.face++;
			else c.y++;
		}
		else if(c.face==3)
		{
			if((pic[c.x+1][c.y])||(c.x==10))c.face++;
			else c.x++;
		}
		else if(c.face==4)
		{
			if((pic[c.x][c.y-1])||(c.y==1))c.face=1;
			else c.y--;
		}
		ans++;
		if((f.x==c.x)&&(f.y==c.y))
		{
			printf("%d",ans);
			return 0;
		}
		if(ans>10000000)
		{
			printf("0");
			return 0;
		}
	}
}
int main(){;}
int syy=Main();