본문 바로가기
알고리즘 문제/Java

[goormlevel/Java] [KOI 2017] 딱지놀이

by 현장 2026. 6. 9.

-Code

import java.io.*;
import java.util.*;

class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		// test cnt
		int n = Integer.parseInt(br.readLine());
		// test 시작
		for (int test = 0; test < n; test++) {
			int[] ttakji1 = convCnt(br.readLine());
			int[] ttakji2 = convCnt(br.readLine());
			// 출력
			System.out.println(caclWin(ttakji1, ttakji2));
		}
		br.close();
	}
	// 승자 계산
	private static char caclWin(int[] ttakji1, int[] ttakji2) {
		// 각 문양을 별부터 비교
		for (int i = 4; i > 0; i--) {
			// 1번이 큰 경우 A
			if (ttakji1[i] > ttakji2[i]) return 'A';
			// 2번이 큰 경우 B
			if (ttakji1[i] < ttakji2[i]) return 'B';
		}
		return 'D';
	}
	// 입력을 배열로 계산
	private static int[] convCnt(String input) {
		StringTokenizer st = new StringTokenizer(input);
		int[] ttakji = new int[5];
		// 반복 횟수 추출
		int loopCnt = Integer.parseInt(st.nextToken());
		// 반복하면서 모양의 갯수 받기
		for (int i = 0; i < loopCnt; i++) {
			int shape = Integer.parseInt(st.nextToken());
			ttakji[shape]++;
		}
		return ttakji;
	}
}