#include #include using namespace std; int dd[] = {0, -1, 0, 1, 0}; int val[50][50][4]; bool vis[50][50]; void output(char c){ putchar(c); putchar('\n'); fflush(stdout); } int input(){ int s; if(scanf("%d", &s) == 0){ exit(0); } if(s > 100){ do{ output('F'); } while(scanf("%d", &s) > 0); exit(0); } return s; } void dfs(int y, int x, int d){ vis[y][x] = true; val[y][x][d] = input(); for(int i = 0; i < 3; ++i){ output('L'); d = (d + 1) & 3; val[y][x][d] = input(); } for(int i = 0; i < 4; ++i){ int ny = y + dd[d], nx = x + dd[d + 1]; if(val[y][x][d] != 0 && !vis[ny][nx]){ output('F'); dfs(ny, nx, d); output('R'); } else{ output('L'); } input(); d = (d + 1) & 3; } output('R'); input(); output('F'); input(); } int main(){ for(int i = 0; i < 50; ++i) for(int j = 0; j < 50; ++j) for(int k = 0; k < 4; ++k){ val[i][j][k] = -1; } dfs(25, 25, 0); }