#include<iostream>
using namespace std;
struct MyStruct
{
int dir = 0;
string name;
int r, c;
};
int main() {
int i, j, minute = 0, flag1 = 0, flag2 = 0;
char ttt[10][10];
MyStruct famer, cattle, famer2, cattle2;
for (i = 0; i < 10; i++)
for (j = 0; j < 10; j++) {
cin >> ttt[i][j];
if (ttt[i][j] == 'F') {
famer.r = i;
famer.c = j;
famer.name = "F";
}
else if (ttt[i][j] == 'C') {
cattle.r = i;
cattle.c = j;
cattle.name = "C";
}
}
famer2 = famer;
cattle2 = cattle;
while (famer.r != cattle.r || famer.c != cattle.c) {
/*农民的路线图*/
minute++;
flag1 = 1;
flag2 = 1;
if (famer.dir == 0 && flag1) {/*人向上走*/
if (ttt[famer.r - 1][famer.c] != '*' && famer.r != 0) {
ttt[famer.r][famer.c] = '.';
ttt[famer.r - 1][famer.c] = 'F';
famer.r = famer.r - 1;
flag1 = 0;
}
else {
famer.dir++;
famer.dir = famer.dir % 4;
flag1 = 0;
}
}
if (famer.dir == 1 && flag1) {/*人向右走*/
if (ttt[famer.r][famer.c + 1] != '*' && famer.c != 9) {
ttt[famer.r][famer.c] = '.';
ttt[famer.r][famer.c + 1] = 'F';
famer.c = famer.c + 1;
flag1 = 0;
}
else {
famer.dir++;
famer.dir = famer.dir % 4;
flag1 = 0;
}
}
if (famer.dir == 2 && flag1) {/*人向下走*/
if (ttt[famer.r + 1][famer.c] != '*' && famer.r != 9) {
ttt[famer.r][famer.c] = '.';
ttt[famer.r + 1][famer.c] = 'F';
famer.r = famer.r + 1;
flag1 = 0;
}
else {
famer.dir++;
famer.dir = famer.dir % 4;
flag1 = 0;
}
}
if (famer.dir == 3 && flag1) {/*人向左走*/
if (ttt[famer.r][famer.c - 1] != '*' && famer.c != 0) {
ttt[famer.r][famer.c] = '.';
ttt[famer.r][famer.c - 1] = 'F';
famer.c = famer.c - 1;
flag1 = 0;
}
else {
famer.dir++;
famer.dir = famer.dir % 4;
flag1 = 0;
}
}
/*接下来是牛的路线*/
if (cattle.dir == 0 && flag2) {/*牛向上走*/
if (ttt[cattle.r - 1][cattle.c] != '*' && cattle.r != 0) {
ttt[cattle.r][cattle.c] = '.';
ttt[cattle.r - 1][cattle.c] = 'C';
cattle.r--;
flag2 = 0;
}
else {
cattle.dir++;
cattle.dir = cattle.dir % 4;
flag2 = 0;
}
}
if (cattle.dir == 1 && flag2) {/*牛向右走*/
if (ttt[cattle.r][cattle.c + 1] != '*' && cattle.c != 9) {
ttt[cattle.r][cattle.c] = '.';
ttt[cattle.r][cattle.c + 1] = 'C';
cattle.c++;
flag2 = 0;
}
else {
cattle.dir++;
cattle.dir = cattle.dir % 4;
flag2 = 0;
}
}
if (cattle.dir == 2 && flag2) {/*牛向下走*/
if (ttt[cattle.r + 1][cattle.c] != '*' && cattle.r != 9) {
ttt[cattle.r][cattle.c] = '.';
ttt[cattle.r + 1][cattle.c] = 'C';
cattle.r++;
flag2 = 0;
}
else {
cattle.dir++;
cattle.dir = cattle.dir % 4;
flag2 = 0;
}
}
if (cattle.dir == 3 && flag2) {/*牛向左走*/
if (ttt[cattle.r][cattle.c - 1] != '*' && cattle.c != 0) {
ttt[cattle.r][cattle.c] = '.';
ttt[cattle.r][cattle.c - 1] = 'C';
cattle.c--;
flag2 = 0;
}
else {
cattle.dir++;
cattle.dir = cattle.dir % 4;
flag2 = 0;
}
}
//if (minute) {
// if (famer.c == famer2.c && famer.dir == famer2.dir && famer.r == famer.r)
// if (cattle.c == cattle2.c && cattle.dir == cattle2.dir && cattle.r == cattle2.r)
// break;
//}
if (minute == 160000)
break;
}
if (famer.c == cattle.c && famer.r == cattle.r)
cout << minute;
else
cout << 0;
return 0;
}