작성
·
335
0
안녕하세요.
아래 코드에서 'o' + 'x' - turn을 인자로 넘겨주는 이유가 궁금합니다. 어떤 의미가 있는 것인가요?
minValue = min(minValue, CanWin(board, 'o' + 'x' - turn));
답변 2
1
'o' + 'x' - turn은 turn이 'o'이면 'x'를, 'x'면 'o'를 반환합니다.
'o' 'x' 'o' 'x'를 왔다 갔다 하는 일종의 토글 기능인 것이죠.
0
int CanWin(vector<vector<char>>& board, char turn)
이 함수보면 turn 은 내가 둔 수 입니다.
board[y][x] = turn; 내가 둔수를 셋팅 햇으면
상대방이 둔 수의 결과를 봐야합니다.
minValue = min(minValue, CanWin(board, 'o' + 'x' - turn));
그게 위 코드 입니다.