본문 바로가기

Algorithm

(C++) - 백준(BOJ) 4493번 : 가위 바위 보?

반응형

https://www.acmicpc.net/problem/4493

 

4493번: 가위 바위 보?

문제 가위 바위 보는 두 명이서 하는 게임이다. 보통 미리 정해놓은 수 만큼 게임을 하고, 많은 게임을 이긴 사람이 최종 승자가 된다. 가위 바위 보를 한 횟수와 매번 두 명이 무엇을 냈는지가 주어졌을 때, 최종 승자를 출력하는 프로그램을 작성하시오. 바위는 가위를 이긴다. 가위는 보를 이긴다. 보는 바위를 이긴다. 입력 첫째 줄에는 테스트 케이스의 개수 t(0 < t < 1000)가 주어진다. 각 테스트 케이스의 첫째 줄에는 가위 바위 보를 한 횟수 n

www.acmicpc.net

 

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
#include <iostream>
using namespace std;
int main() {
    int t;
    cin >> t;
    while (t--)
    {
        int n;
        int awin = 0;
        int bwin = 0;
        cin >> n;
        while (n--)
        {
            
            char a, b;
            cin >> a >> b;
            if (a == 'R')
            {
                if (b == 'R')
                {
                    awin++;
                    bwin++;
                }
                else if (b == 'P')
                    bwin++;
                if (b == 'S')
                    awin++;
            }
            else if (a == 'P')
            {
                if (b == 'R')
                    awin++;
                else if (b == 'P')
                {
                    awin++;
                    bwin++;
                }
                if (b == 'S')
                    bwin++;
            }
            else if (a == 'S')
            {
                if (b == 'R')
                    bwin++;
                else if (b == 'P')
                    awin++;
                if (b == 'S')
                {
                    awin++;
                    bwin++;
                }
            }
            
        }
        if (awin > bwin)
            cout << "Player 1" << '\n';
        else if (bwin > awin)
            cout << "Player 2" << '\n';
        else
            cout << "TIE" << '\n';
    }
}
cs