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;

public class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));
		String t = "";
		boolean[] c = new boolean[3];
		for(int i = 0;i<3;i++)c[i]=false;c[0]=true;
		while ((t = bf.readLine()) != null) {
			String[] s = t.split(",");
			if(s.length!=2)break;
			int p0 = (int)s[0].charAt(0)-'A';
			int p1 = (int)s[1].charAt(0)-'A';
			if(c[p0]||c[p1]){
				boolean x=c[p0];c[p0]=c[p1];c[p1]=x;
			}
		}
		for(int i = 0;i<3;i++)if(c[i]){
			System.out.println((char)('A'+i));
			break;
		}
	}
}