import java.util.ArrayList;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) {

		Scanner in = new Scanner(System.in);
		// ?????????????????°?????\???
		int gameCount = in.nextInt();
		// ??????????????????????????°????????\???
		int[] cardNum = new int[9];
		// ????????????????????????????????\???
		String[] cardColor = new String[9];
		// ??????????????????????´????????????????
		ArrayList<Integer> resultList = new ArrayList<>();

		// ???????????????????????°?????\???
		for(int setCount = 0; setCount < gameCount; setCount++) {

			// 9????????????????????°???????????????????´?
			for(int cardCount = 0; cardCount < 9; cardCount++) {

				cardNum[cardCount] = in.nextInt();

			}

			// 9?????????????????????????????????????´?
			for(int cardCount = 0; cardCount < 9; cardCount++) {

				cardColor[cardCount] = in.next();

			}

			// ?????????????????????????????????????????????????????§???????????????
			RummyJudge rummy = new RummyJudge();

			// ?????\?????????????????´???
			int[][] hasCard = hasCardSet(cardNum, cardColor);

			// ?????£??????????????°?????\???????????°
			int point = 0;

			// ???????????§????????°?????????????????£???????????????????????¢????????????????????????
			point += rummy.sameNumberCheck(hasCard);

			// ???????????§??£???????????£???????????????????????¢????????????????????????
			point += rummy.continuousNumberCheck(hasCard);

			// 3??????????????£????????????1???????????????????????????

			if(point == 3) {

				resultList.add(1);

			} else {

				resultList.add(0);

			}
		}

		for(int result: resultList) {

			System.out.println(result);

		}

	}

	// ?????\?????????????????????????????´?????????????????????
	private static int[][] hasCardSet(int[] cardNum, String[] cardColor) {

		// ????????????????´???????????¬??????????
		int[][] hasCard = new int[3][9];

		// ???????????????????????????
		for(int i = 0; i < 9; i++) {

			//1???9?????§???????????????????????´????????°??????????´¢
			for(int j = 1; j <= 9; j++) {

				// ??????????????????????????°???????????????????????§???
				if(cardNum[i] == j) {

					// ???????????????????????£???????´?????????????
					switch(cardColor[i]) {

					case "R":

						hasCard[0][j-1] += 1;

						break;

					case "G":

						hasCard[1][j-1] += 1;

						break;

					case "B":

						hasCard[2][j-1] += 1;

						break;

					}

					break;

				}
			}
		}

		return hasCard;

	}


}

class RummyJudge{

	// 3????????°?????????????????????????????????????´¢??????????????????
	int sameNumberCheck(int[][] hasCard) {

		// ???????????°???????´????????????°
		int point = 0;

		// ???????????????????????????????????§???
		for(int i = 0; i < 3; i++) {

			for(int j = 0; j < 9; j++) {

				// ??????????????´????????????????????°??????3?????\??£??????????????????
				if(hasCard[i][j] >= 3) {

					// 3???????????°??????????????????
					point++;
					// ?????????????????£????????????????¶????
					hasCard[i][j] -= 3;

				}
			}
		}

		return point;

	}

	// ???????????§3?????£???????????£??????????????????????????????????´¢??????????????????
	int continuousNumberCheck(int[][] hasCard) {

		// ???????????°???????´????????????°
		int point = 0;
		// ?¶???????????????°?????????????????????????????°
		int continuousCount = 0;

		for(int i = 0; i < 3; i++) {

			for(int j = 0; j < 9; j++) {

				// ???????????£?¶???????????´????????????°????????\??£??????????????????
				if(hasCard[i][j] != 0) {

					// ??°????????\??£???????????°??????????????????
					continuousCount++;

					// ??£?????????????¶??????????????????????
					if(continuousCount == 3) {

						// ???????¶???????????????°??????????????????
						point++;
						// ?????????????????£????????????????¶????
						hasCard[i][j] -= 1;
						hasCard[i][j-1] -= 1;
						hasCard[i][j-2] -= 1;
						// ????´???????0????????????????????????????????????????????????????????°????????????
						j = 0;
						// ??£???????????????????????????
						continuousCount = 0;

					}

				} else {

					// ??£?????????????¶????????????£????????£???????????????????????????
					continuousCount = 0;

				}
			}
		}

		return point;

	}
}

Measured memory_bytes: 29160