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 C# (judge verdict: Accepted)

using System;
class _0047
{
    public static void Main()
    {
        string str;
        string[] data;
        bool[] cup = new bool[3];
        bool tmp;
        cup[0] = true;
        for (int i = 1; i < cup.Length; i++) cup[i] = false;
        while ((str = Console.ReadLine()) != null)
        {
            data = str.Split(',');
            tmp = cup[data[0][0] - 'A'];
            cup[data[0][0] - 'A'] = cup[data[1][0] - 'A'];
            cup[data[1][0] - 'A'] = tmp;
        }
        for (int i = 0; i < cup.Length; i++) if (cup[i]) Console.WriteLine((char)(i + 'A'));
    }
}