#include<stdio.h>
int main(){
  int n,i,j,k,l,ny,nx;
  char s,e,f;
  double p=1;
  int X[]={0,1,0,-1};
  int Y[]={1,0,-1,0};
  while(scanf("%d",&n),n){
    int c[3][3]={0};
    scanf(" %c %c %c",&s,&e,&f);
    c[(s-'A')/3][(s-'A')%3]=p=1;
    while(n--){
      p*=4;
      int d[3][3]={0};
      for(i=0;i<3;i++){
	for(j=0;j<3;j++){
	  for(k=0;k<4;k++){
	    ny=i+Y[k];
	    nx=j+X[k];
	    if((f-'A')/3==ny&&(f-'A')%3==nx||nx<0||nx==3||ny<0||ny==3){
	     nx-=X[k];
	     ny-=Y[k];
	    }
	    d[ny][nx]+=c[i][j];
	  }
	}
     }
     for(i=0;i<9;i++)c[i/3][i%3]=d[i/3][i%3];
     //for(i=0;i<9;i++)printf("%d ",d[i/3][i%3]);printf("\n");
    }
    printf("%f\n",c[(e-'A')/3][(e-'A')%3]/p);
  }
  return 0;
}