帮我看看 帮帮我
#include <bits/stdc++.h>
using namespace std;
int main()
{
char s[12][12];
for (int i = 0; i <= 11; i++)
{
for (int j = 0; j <= 11; j++)
{
s[i][j] = '*';
}
}
for (int i = 1; i <= 10; i++)
{
for (int j = 1; j <= 10; j++)
{
cin >> s[i][j];
}
}
int x1,y1,x2,y2;
for (int i = 1; i <= 10; i++)
{
for (int j = 1; j <= 10; j++)
{
if (s[i][j] == 'C')
{
y1 = i;
x1 = j;
}
if (s[i][j] == 'F')
{
y2 = i;
x2 = j;
}
}
}
long long int i = 10e9;
int cnt_s = 0;
char f1 = 'w',f2 = 'w';
while ((x1 != x2 || y1 != y2) && i > 0)
{
i--;
cnt_s += 1;
if (f1 == 'w')
{
if (s[y1][x1 + 1] != '*')
{
swap(s[y1][x1],s[y1][x1 + 1]);
x1++;
}
else
{
f1 = 'd';
}
}
if (f1 == 's')
{
if (s[y1][x1 - 1] != '*')
{
swap(s[y1][x1],s[y1][x1 - 1]);
x1--;
}
else
{
f1 = 'a';
}
}
if (f1 == 'd')
{
if (s[y1 + 1][x1] != '*')
{
swap(s[y1][x1],s[y1 + 1][x1]);
y1++;
}
else
{
f1 = 's';
}
}
if (f1 == 'a')
{
if (s[y1 - 1][x1] != '*')
{
swap(s[y1][x1],s[y1 - 1][x1]);
y1--;
}
else
{
f1 = 'w';
}
}
//////////////////////////////////////////////////////////////
if (f2 == 'w')
{
if (s[y2][x2 + 1] != '*')
{
swap(s[y2][x2],s[y2][x2 + 1]);
x2++;
}
else
{
f2 = 'd';
}
}
if (f2 == 's')
{
if (s[y2][x2 - 1] != '*')
{
swap(s[y2][x2],s[y2][x2 - 1]);
x2--;
}
else
{
f2 = 'a';
}
}
if (f2 == 'd')
{
if (s[y2 + 1][x2] != '*')
{
swap(s[y2][x2],s[y2 + 1][x2]);
y2++;
}
else
{
f2 = 's';
}
}
if (f2 == 'a')
{
if (s[y2 - 1][x2] != '*')
{
swap(s[y2][x2],s[y2 - 1][x2]);
y2--;
}
else
{
f2 = 'w';
}
}
}
cout << cnt_s;
return 0;
}