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;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
 
namespace ConsoleApplication13
{
    class Program
    {
        static void Main(string[] args)
        {
			int[] a = new int[3];
			a[0]=1;
			a[1]=a[2]=0;
			string line;
			while((line=Console.ReadLine())!=null)
			{
				string b = line;
				int c=0;
				if(b[0]=='A'&&b[2]=='B')
				{
				c=a[0];
				a[0]=a[1];
				a[1]=c;
			}
			if(b[0]=='A'&&b[2]=='C')
				{
				c=a[0];
				a[0]=a[2];
				a[2]=c;
			}
			if(b[0]=='B'&&b[2]=='C')
				{
				c=a[1];
				a[1]=a[2];
				a[2]=c;
			}
			if(b[0]=='B'&&b[2]=='A')
				{
				c=a[0];
				a[0]=a[1];
				a[1]=c;
			}
			if(b[0]=='C'&&b[2]=='A')
				{
				c=a[0];
				a[0]=a[2];
				a[2]=c;
			}
			if(b[0]=='C'&&b[2]=='B')
				{
				c=a[1];
				a[1]=a[2];
				a[2]=c;
			}
				}
				if(a[0]==1)
				Console.WriteLine("A");
				if(a[1]==1)
				Console.WriteLine("B");
				if(a[2]==1)
				Console.WriteLine("C");
}}
}