public class Main {
public static int count=0;
static String maze[]= {"UDDLUULRUL","UURLLLRRRU","RRUURLDLRD","RUDDDDUUUU","URUDLLRRUU","DURLRLDLRL"
,"ULLURLLRDU","RDLULLRDDD","UUDDUDUDLL","ULRDLUURRR"};
static int visit[][]=new int[10][10];
public static void main(String[] args) {
// TODO Auto-generated method stub
/* for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
visit[i][j]=0;
}
}
*/
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
for(int k=0;k<10;k++){
for(int l=0;l<10;l++){
visit[k][l]=0; //每次都要消除visit
}
}
dfs(i,j);
}
}
System.out.println(count);
}
public static void dfs(int n,int m){
if(n<0||n>9||m<0||m>9){
count++;
return;
}
if(visit[n][m]==1){
return;
}
visit[n][m]=1;
/* switch(maze[n].charAt(m)){
case 'U':
dfs(n-1,m);break;
case 'D':
dfs(n+1,m);break;
case 'L':
dfs(n,m-1);break;
case 'R':
dfs(n,m+1);break;
default:
break;
}*/
if(maze[n].charAt(m)=='U') {
dfs(n-1,m);
}
else if(maze[n].charAt(m)=='D') {
dfs(n+1,m);
}
else if(maze[n].charAt(m)=='L') {
dfs(n,m-1);
}
else if(maze[n].charAt(m)=='R') {
dfs(n,m+1);
}
return;
}
}
public class Main {
public static int count=0;
static String maze[]= {"UDDLUULRUL","UURLLLRRRU","RRUURLDLRD","RUDDDDUUUU","URUDLLRRUU","DURLRLDLRL"
,"ULLURLLRDU","RDLULLRDDD","UUDDUDUDLL","ULRDLUURRR"};
static int visit[][]=new int[10][10];
public static void main(String[] args) {
// TODO Auto-generated method stub
/* for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
visit[i][j]=0;
}
}
*/
for(int i=0;i<10;i++){
for(int j=0;j<10;j++){
for(int k=0;k<10;k++){
for(int l=0;l<10;l++){
visit[k][l]=0;
}
}
dfs(i,j);
}
}
System.out.println(count);
}
public static void dfs(int n,int m){
while(true){
if(n<0||n>9||m<0||m>9){
count++;
break;
}
if(visit[n][m]==1){
break;
}
visit[n][m]=1;
switch(maze[n].charAt(m)){
case 'U':
n=n-1;break;
case 'D':
n=n+1;break;
case 'L':
m=m-1;break;
case 'R':
m=m+1;break;
default:
break;
}
}
}
}