Language: Java






import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

class Main{
  public static void main(String args[]) throws IOException{
   BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
   String[] surface =  br.readLine().split(" ");
   String ordern = br.readLine();
   int n = Integer.parseInt( ordern );


   Dise dice1 = new Dise();
   dice1.setSurface(surface);//?????????????????¢???????????????
   dice1.SetDice(1, 2 , 3);//???????????????????????£??¢????????????????????????????????°?????¨????????????????¨??????????


   for(int i = 0; i < n ; i++){

	   String[] order = br.readLine().split(" ");
	   dice1.RegulateDice( Integer.parseInt( order[0] ) ,Integer.parseInt( order[1] ));
	   System.out.println(dice1.surface[dice1.Right] );
	   dice1.SetDice(1, 2 , 3);

   }

  }
}

class Dise{

	int[] surface = new int [6];//????????????????????¢
    int Top,Bottom,Right,Left,Front,Back;//?????¢????????¢????????¢????????¢????????¢????????¢????????????????????????0??????5??????????????????????????????


    void setSurface(String[] SurfaceString){//??\??????????????¢???????????????????????????

	for(int i = 0; i < 6; i++){

	      surface[i] = Integer.parseInt( SurfaceString[i] );

	}

    }

    void SetDice(int top, int front, int right){//1??????6????????§1?????????0??????5??¨??????
       Top  = top - 1;
       Front = front - 1;
       Right = right - 1;
       Bottom = 5- (top - 1);//?????¢????±?????????°???????????????????????¢????±???????
       Back = 5- (front - 1);
       Left = 5- (right - 1);
    }//SetDice


    void RegulateDice( int setTop, int setFront  ){//??\??????????????¢????????¢????????¢???????????????????????????????????¢?????????


    	if( surface[Left] == setTop )   {


    	    RollDice("E");

    	}else if( surface[Right] == setTop ){

    		RollDice("W");

    	}else if( surface[Front] == setTop ){

    		RollDice("N");

    	}else if( surface[Back] == setTop ){

    		RollDice("S");

    	}else if( surface[Bottom] == setTop ) {

    		RollDice("NN");

    	}
    
    //////////?????¢?????????????????´??????????¬?????????¢????????´?????????/////////////

    	if( surface[Left] == setFront )   {

      	  RollDice("NES");

      	}else if( surface[Right] == setFront ){

      		RollDice("NWS");

      	}else if(surface[Back]== setFront){

      		RollDice("NEES");

      	}

    	
    }

    void RollDice(String RollString){

    	String[] SurfaceString =  RollString.split("");
    	for(int i = 0; i < SurfaceString.length ; i++){

    		if( SurfaceString[i].equals("W") ){//????????¢??????

    			Bottom = Left;
    			Left = Top;
    			Top = 5 - Bottom;
    			Right = 5 - Left;

    		}else if( SurfaceString[i].equals("S")){//???????????¢??????

    			Bottom = Front;
    			Front = Top;
    			Top = 5 - Bottom;
    			Back = 5 - Front;

    		}else if( SurfaceString[i].equals("E")){//????????¢??????

    			Bottom = Right;
    			Right = Top;
    			Top = 5 - Bottom;
    			Left = 5 - Right;

    		}else if( RollString[i].equals("N")){ //???????????¢??????

    			Bottom = Back;
    			Back = Top;
    			Top = 5 - Bottom;
    			Front = 5 - Back;

    		}
    	}


    }//RollDice

}

Compiler output:
Main.java:132: error: array required, but String found
    		}else if( RollString[i].equals("N")){ //??????????????????
    		                    ^
1 error