#include <iostream>
#include <string>
#include <cstdio>
using namespace std;
int main()
{
//freopen("input.txt","r",stdin);
int T=0,i,j,m,n;
while(1)
{
char a[5][5];
gets(a[0]);
if(a[0][0]=='Z')
break;
for(i=1;i<5;i++)
gets(a[i]);
for(i=0;i<5;i++)
for(j=0;j<5;j++)
if(a[i][j]==' ')
{
m=i;
n=j;
}
int flag=0;
char c;
while(c=getchar())
{
if(c=='0')
{
getchar();
break;
}
switch(c)
{
case 'A':
{
if(m>0)
{
a[m][n]=a[m-1][n];
a[m-1][n]=' ';
m--;
}
else
flag=1;
break;
}
case 'B':
{
if(m<4)
{
a[m][n]=a[m+1][n];
a[m+1][n]=' ';
m++;
}
else
flag=1;
break;
}
case 'L':
{
if(n>0)
{
a[m][n]=a[m][n-1];
a[m][n-1]=' ';
n--;
}
else
flag=1;
break;
}
case 'R':
{
if(n<4)
{
a[m][n]=a[m][n+1];
a[m][n+1]=' ';
n++;
}
else
flag=1;
break;
}
}
if(flag)
{
while(getchar()!='0');
getchar();
break;
}
}
if(++T!=1)
cout<<endl;
cout<<"Puzzle #"<<T<<':'<<endl;
if(!flag)
{
for(i=0;i<5;i++)
{
for(j=0;j<5;j++)
{
if(j)
cout<<' ';
cout<<a[i][j];
}
cout<<endl;
}
}
else
cout<<"This puzzle has no final configuration."<<endl;
}
return 0;
}
UVA - 227 Puzzle
最新推荐文章于 2022-01-12 05:02:47 发布