본문 바로가기
알고리즘/백준

[백준]14969_딱지놀이

by 모두의 향연 2022. 2. 15.
728x90
반응형
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.StringReader;
import java.util.Arrays;
import java.util.StringTokenizer;
 
public class Main_14969_딱지놀이 {
//    static String str = "5\r\n" + "1 4\r\n" + "4 3 3 2 1\r\n" + "5 2 4 3 2 1\r\n" + "4 4 3 3 1\r\n" + "4 3 2 1 1\r\n"
//            + "4 2 3 2 1\r\n" + "4 4 3 2 1\r\n" + "3 4 3 2\r\n" + "5 4 4 2 3 1\r\n" + "5 4 2 4 1 3";
 
    public static void main(String[] args) throws NumberFormatException, IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();
//        br = new BufferedReader(new StringReader(str));
        StringTokenizer st;
 
        int round = Integer.parseInt(br.readLine());// 라운드수
        for (int i = 1; i <= round; i++) {
            int card = 0;
            int aCount = 0, bCount = 0;
            int[] bCard = new int[4];
            int[] aCard = new int[4];
            st = new StringTokenizer(br.readLine());
            aCount = Integer.parseInt(st.nextToken());// A의 카드 개수
            card = 0;
            for (int a = 0; a < aCount; a++) {
                card = Integer.parseInt(st.nextToken());
                aCard[card - 1]++;
            }
            st = new StringTokenizer(br.readLine());
            bCount = Integer.parseInt(st.nextToken());// B의 카드 개수
            card = 0;
            for (int b = 0; b < bCount; b++) {
                card = Integer.parseInt(st.nextToken());
                bCard[card - 1]++;
            }
//            System.out.println(Arrays.toString(aCard));//시험출력
//            System.out.println(Arrays.toString(bCard));//시험출력
 
            // 만약 두 딱지의 별의 개수가 다르다면, 별이 많은 쪽의 딱지가 이긴다.
            if (aCard[3> bCard[3]) {
                sb.append("A").append("\n");
            } else if (aCard[3< bCard[3]) {
                sb.append("B").append("\n");
            } else {// 별의 개수가 같고 동그라미의 개수가 다르다면, 동그라미가 많은 쪽의 딱지가 이긴다.
                if (aCard[2> bCard[2]) {
                    sb.append("A").append("\n");
                } else if (aCard[2< bCard[2]) {
                    sb.append("B").append("\n");
                } else {// 별, 동그라미의 개수가 각각 같고 네모의 개수가 다르다면, 네모가 많은 쪽의 딱지가 이긴다.
                    if (aCard[1> bCard[1]) {
                        sb.append("A").append("\n");
                    } else if (aCard[1< bCard[1]) {
                        sb.append("B").append("\n");
                    } else {// 별, 동그라미, 네모의 개수가 각각 같고 세모의 개수가 다르다면, 세모가 많은 쪽의 딱지가 이긴다.
                        if (aCard[0> bCard[0]) {
                            sb.append("A").append("\n");
                        } else if (aCard[0< bCard[0]) {
                            sb.append("B").append("\n");
                        } else {// 별, 동그라미, 네모, 세모의 개수가 각각 모두 같다면 무승부이다.
                            sb.append("D").append("\n");
                        }
                    }
                }
            }
        }
        System.out.println(sb);
    }
}
 
cs
728x90
반응형

'알고리즘 > 백준' 카테고리의 다른 글

[백준]3040_백설 공주와 일곱 난쟁이  (0) 2022.02.15
[백준]16935_배열돌리기3  (1) 2022.02.09
[백준]16926_배열돌리기1  (0) 2022.02.09
백준-10430번-java-나머지  (0) 2021.06.08
백준-10869번-java-사칙연산  (0) 2021.06.08