Problem:
カップゲーム

3 つのカップがふせて置かれています。カップの置かれている場所を、順に A,B,C と呼ぶことにします。最初は A に置かれているカップの中にボールが隠されているとします。カップの位置を入れ替えると、中に入っているボールも一緒に移動します。

入れ替える２つのカップの位置を読み込んで、最終的にどの場所のカップにボールが隠されているかを出力するプログラムを作成してください。

Input

入れ替える２つのカップの位置が順番に複数行にわたり与えられます。各行に、入れ替える２つのカップの位置を表す文字（A, B, または C）がカンマ区切りで与えられます。

入れ替える操作は 50 回を超えません。

Output

ボールが入っているカップの場所（A, B, または C）を１行に出力します。

Sample Input

B,C
A,C
C,B
A,B
C,B

Output for the Sample Input

A

Solution in JAVA (judge verdict: Wrong Answer)

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.StringTokenizer;
   
public class Main {
       
     
    public static void main(String[] args) {
            
          try {
                 
        	BufferedReader br = new BufferedReader(new InputStreamReader(System.in));  
            String s;
            ArrayList<String> motoList = new ArrayList<String>();
            motoList.add("A");
            motoList.add("B");
            motoList.add("C");
            
            while((s = br.readLine())!=null)
            {
       		 StringTokenizer st = new StringTokenizer(s,",");
       		 String first = st.nextToken();
       		 String second = st.nextToken();
       		 int firstIndex = motoList.indexOf(first);
       		 int secondIndex = motoList.indexOf(second);
       		 String temp = null;
       		 temp = motoList.get(firstIndex);
       		 motoList.set(firstIndex,motoList.get(secondIndex));
       		 motoList.set(secondIndex,temp);
       		 System.out.println(motoList);
            }
            for(int i = 0; i<motoList.size(); i++)
       	 	{
       		 String str = motoList.get(i);
       		 if(str.equals("A"))
       		 {
       			 if(i==0)
       			 {
       				 System.out.println("A");
       				 break;
       			 }
       			 
       			 else if(i==1)
       			 {
       				System.out.println("B");
       				break;
       			 }
       			 
       			 else
       			 {
       				System.out.println("C");
       				break;
       			 }
       		 }
       	 	}
          	
          }catch (Exception e) {
              e.printStackTrace();
            }
        }
      
}