본문 바로가기

PS/boj

백준 24678 돌 무더기 게임1

http://www.acmicpc.net/problem/24678 

 

24678번: 돌무더기 게임 1

첫 번째 케이스에서 R의 첫 시행 이후 가능한 다음 상태는 $(0,0,2), (0,2,0), (2,0,0)$뿐이며, B는 더 이상 시행을 할 수 없으므로 이긴다. 두 번째 케이스에서 R의 첫 시행 이후 가능한 다음 상태는 다음

www.acmicpc.net

게임이론 문제였습니다.

개인적으로 발상을 떠올리기 어려운 문제였습니다. 

짝수가 2개이상인 꼴로 시작한다면 짝수번째 시행에서 남은 돌을 1개이하로 만들 수 없게 됩니다. 따라서 짝수 2개이상일때 홀수번째시행인 R이 아닐때는 짝수번째 시행인 B가 이기게 됩니다.

#include <bits/stdc++.h>
using namespace std;
void fast_io() {
  cin.tie(0)->sync_with_stdio(0);
}
using namespace std;
int main() {
    fast_io();
    int T;
    cin>>T;
    while(T--){
        int x,y,z;
        cin>>x>>y>>z;
        int e=0;
        if(x%2==0) e++;
        if(y%2==0) e++;
        if(z%2==0) e++;
        if(e>=2) cout<<"R\n";
        else cout<<"B\n";
    }
}

'PS > boj' 카테고리의 다른 글

백준 17492 바둑알 점프  (0) 2022.08.08
백준 6068 시간 관리하기  (0) 2022.08.07
백준 16238 독수리  (0) 2022.08.04
백준 1525 퍼즐  (0) 2022.08.03
백준 20943 카카오톡  (0) 2022.07.27