알고리즘 문제
[C/C++ 백준 11868번] 님 게임 2 (Platinum 4)
새파란 공대생
2020. 9. 1. 23:28
https://www.acmicpc.net/problem/11868
11868번: 님 게임 2
koosaga와 cubelover가 님 게임을 하고 있다. 님 게임은 돌을 차곡 차곡 위로 쌓아올린 돌 더미 k개를 이용한다. 각각의 돌 더미에는 한 개 이상의 돌이 있다. 두 사람은 서로 턴을 번갈아가면서 님 게�
www.acmicpc.net
필승 전략 게임
필승 전략 게임은 어느 한 쪽이 반드시 이길 수 있는 전략을 가진 게임을 말한다.
librewiki.net
참고. 항상 bit가 가장 큰 수를 바꾸면 xor연산을 진행했을 때, 0을 만들 수 있다. 상대방은 어떤 행동을 진행하더라도 xor연산을 진행했을때 0이 아니게 되므로, 위 행동을 반복하면 결국 이길 수 있다.
#include <cstdio>
int main(void){
unsigned long long int N, P[101], s;
scanf("%d", &N);
for(int i=0; i<N; i++){
scanf("%llu", &P[i]);
}
s = P[0];
for(int i=1; i<N; i++){
s = s ^ P[i];
}
if(s>0)
printf("koosaga");
else
printf("cubelover");
}