Language: Java



import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;

public class Main{
	public static void main(String[] args) throws IOException {

		// ?????????????????????
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		// ?????????????´???´???
		ArrayList<Integer> answer = new ArrayList<Integer>();

		// 1??????????????????set?????°??????????????°
		int set = Integer.parseInt(br.readLine());
		// for????????? set????????°?????????
		for (int cnt = 0; cnt < set; cnt++) {

			// CardRummy????????? ???????????°??????????????????????????????????????????????????°???
			CardRummy cr = new CardRummy(br.readLine(), br.readLine());
			// ???????????¶??????????????°??? ????????????????????°0
			// result????????????????????????????´???´???
			int result = cr.playtheGame();
			// ?????????????´?
			answer.add(result);
		}

		// for????????? ??????????????????????????????
		for (int cnt = 0; cnt < answer.size(); cnt++)
			// ???????????????
			System.out.println(answer.get(cnt));
	} // ????????????????????????????????????
}// ?????????NewRummy????????????

/**
 * ?????????CardRummy
 */
public class CardRummy {

	/**
	 * ?????????????????°??¶???
	 */
	private static final int ONECARDSET = 9;

	/**
	 * ?????????R cardR???cardG???cardB??????????????????????????????
	 */
	private int[] cardR = new int[ONECARDSET];

	/**
	 * ?????????G cardR???cardG???cardB??????????????????????????????
	 */
	private int[] cardG = new int[ONECARDSET];

	/**
	 * ?????????B cardR???cardG???cardB??????????????????????????????
	 */
	private int[] cardB = new int[ONECARDSET];

	/**
	 * ?????°??????????????? ?????£???????????????????´???????
	 *
	 * @param tmpNum
	 *            ??????????????°???????????? ??????1 2 3 3 4 5 7 7 7
	 * @param tmpColor
	 *            ???????????????????????? ??????R R R R R R G G G
	 */
	public CardRummy(String tmpNum, String tmpColor) {

		// ?????°???????§£ ??°??????????´?
		String[] transNum = tmpNum.split(" ");
		// ?????°???????§£ ??????????´?
		String[] transColor = tmpColor.split(" ");

		// for????????? ????§£??????????????????????????????
		for (int cnt = 0; cnt < ONECARDSET; cnt++) {
			/**
			 * ONECARDSET CardR??¨CardG??¨CardB???????????????9????????????
			 */
			// ????§£?????????????????????
			if (transColor[cnt].equals("R"))
				// ???????????????????????°????????????
				cardR[cnt] = Integer.parseInt(transNum[cnt]);
			// ????§£?????????????????????
			else if (transColor[cnt].equals("G"))
				// ???????????????????????°????????????
				cardG[cnt] = Integer.parseInt(transNum[cnt]);
			// ????§£?????????????????????
			else if (transColor[cnt].equals("B"))
				// ???????????????????????°????????????
				cardB[cnt] = Integer.parseInt(transNum[cnt]);
		}
	}// ?????????????????????????????????

	/**
	 * ???????????¶???????????????
	 *
	 * @return result ??????????????????????????????
	 */

	public int playtheGame() {// ?????£????????????
		// ?????????0???????????????
		int result = 0;

		// ?????????????????????
		Arrays.sort(cardR);
		Arrays.sort(cardG);
		Arrays.sort(cardB);

		// 3??£?¶??????°??????????????°?¶????
		cardR = serialNumCard(cardR);
		cardG = serialNumCard(cardG);
		cardB = serialNumCard(cardB);

		// ????????°??????3???????????°?¶????
		cardR = sameNumCard(cardR);
		cardG = sameNumCard(cardG);
		cardB = sameNumCard(cardB);

		// ?????????????????????
		Arrays.sort(cardR);
		Arrays.sort(cardG);
		Arrays.sort(cardB);

		// 1~9?????°?????????????????????
		// ????????????????????°??????0????????¨??¨0
		if (cardR[ONECARDSET - 1] == 0 && cardG[ONECARDSET - 1] == 0 && cardB[ONECARDSET - 1] == 0)

			// ?????¶??????????????°???????????????
			result = 1;
		// ????????????????????????????????????
		return result;

	}// playtheGame????????????????????????

	/**
	 * ????????°????????????????????°?¶????
	 *
	 * @param card
	 *            ?????¶??????????????°?¶???????????????????
	 *
	 * @return ?¶?????????¨???????????£????????????
	 */
	public static int[] sameNumCard(int[] card) {// ?????£????????????

		/**
		 * for??????????????¬???
		 *
		 * ???????????????????±????????????¶ ??????1 2 3 3 4 5 7 7 7 ??? [1] [2] [3]
		 *
		 * @param cnt1
		 *            ???????????????????????? "0";
		 * @param cnt2
		 *            ???????????????????????? "cnt1 + 1";
		 * @param cnt3
		 *            ???????????????????????? "cnt2 + 1";
		 *
		 * @param ONECARDSET
		 *            ??????????????????????¶????????????¨?????§?????????
		 */

		// for???????????????????????????????????????????????¨???????????????????????°????????????
		for (int cnt1 = 0; cnt1 < ONECARDSET - 2; cnt1++) {
			// ????????????????????¨???????????????????????°????????????
			for (int cnt2 = cnt1 + 1; cnt2 < ONECARDSET - 1; cnt2++) {
				for (int cnt3 = cnt2 + 1; cnt3 < ONECARDSET; cnt3++) {
					// (1)????????°???????????????????????????
					if (card[cnt1] == card[cnt2] && card[cnt2] == card[cnt3]) {
						// (1)????????¶??????????????°????????°??????????????????
						if (card[cnt1] != 0 && card[cnt2] != 0 && card[cnt3] != 0) {

							// ??¨???????????¶??????????????°????????§?¨???????????¶????
							card[cnt1] = 0;
							card[cnt2] = 0;
							card[cnt3] = 0;
						}
					}
				}
			}
		}
		// ?¶?????????¨???????????£???????????????????????????
		return card;
	}// sameNumCard????????????????????????

	/**
	 * 3??£?¶??????°??????????????°?¶????
	 *
	 * @param card
	 *            ?????¶??????????????°?¶???????????????????
	 *
	 * @return ?¶?????????¨???????????£????????????
	 */

	public static int[] serialNumCard(int[] card) {// ?????£????????????

		/**
		 * for??????????????¬???
		 *
		 * ???????????????????±????????????¶ ??????1 2 3 3 4 5 7 7 7 ??? [1] [2] [3]
		 *
		 * @param cnt1
		 *            ???????????????????????? "0";
		 * @param cnt2
		 *            ???????????????????????? "cnt1 + 1";
		 * @param cnt3
		 *            ???????????????????????? "cnt2 + 1";
		 *
		 * @param ONECARDSET
		 *            ??????????????????????¶????????????¨?????§?????????
		 */

		// for???????????????????????????????????????????????¨???????????????????????°????????????
		for (int cnt1 = 0; cnt1 < ONECARDSET - 2; cnt1++) {
			for (int cnt2 = cnt1 + 1; cnt2 < ONECARDSET - 1; cnt2++) {
				for (int cnt3 = cnt2 + 1; cnt3 < ONECARDSET; cnt3++) {
					// (1)3??£?¶??????°?????????????????????
					if (card[cnt1] == card[cnt2] - 1 && card[cnt1] == card[cnt3] - 2) {
						// (1)????????¶??????????????°????????°??????????????????
						if (card[cnt1] != 0 && card[cnt2] != 0 && card[cnt3] != 0) {

							// ??¨???????????¶??????????????°????????§?¨???????????¶????
							card[cnt1] = 0;
							card[cnt2] = 0;
							card[cnt3] = 0;
						}
					}
				}
			}
		}
		// ?¶?????????¨???????????£???????????????????????????
		return card;
	}// serialNumCard ????????????????????????
}// ?????????????????????

Compiler output:
Main.java:41: error: class CardRummy is public, should be declared in a file named CardRummy.java
public class CardRummy {
       ^
1 error