Koala - 8기/기초 알고리즘 스터디

[백준/c++] 4493번 가위 바위 보?

yer_in 2022. 9. 11. 19:52

4493번: 가위 바위 보? (acmicpc.net)

 

4493번: 가위 바위 보?

첫째 줄에는 테스트 케이스의 개수 t(0 < t < 1000)가 주어진다. 각 테스트 케이스의 첫째 줄에는 가위 바위 보를 한 횟수 n(0 < n < 100)이 주어진다. 다음 n개의 줄에는 R, P, S가 공백으로 구분되어 주어

www.acmicpc.net

 

 

문제 풀이


 

반복문으로 전체적인 틀을 먼저 설정한 뒤,

가위바위보에서 이겼을 때 player1 과 player2 의 각각 카운트 수를 증가시켜 카운트가 더 큰 player를 승자로 출력할 수 있도록 설정하였다.

srting 클래스 헤더파일을 이용하여 간단하게 구현 가능했다.

 

 

 

 

 

 

 


 

문제 코드


#include<iostream>
#include<string.h>
using namespace std;

int main() {

    int i = 0;
    string p1, p2;
    int t;
    cin >> t;

    while (i < t) {
        int j = 0;
        int k = 0;
        int p1cnt = 0;
        int p2cnt = 0;
        cin >> j;
        while (k < j) {
            cin >> p1 >> p2;
            if (p1 == p2) {
                p1cnt += 1;
                p2cnt += 1;
            }
            else if ((p1 == "P" && p2 == "R") || (p1 == "R" && p2 == "S") || (p1 == "S" && p2 == "P")) {
                p1cnt += 1;
            }
            else
                p2cnt += 1;
            k++;
        }
        if (p1cnt > p2cnt) {
            cout << "Player 1" << "\n";
        }
        else if (p1cnt < p2cnt) {
            cout << "Player 2" << "\n";
        }
        else
            cout << "TIE" << "\n";

        i++;
       
    }
    return 0;
}