模拟题,不想写,CV一下,
/**
* @author xnl
* @Description:
* @date: 2022/7/13 22:11
*/
public class Solution {
public static void main(String[] args) {
Solution solution = new Solution();
}
public boolean validTicTacToe(String[] board) {
int xCount = 0 , yCount = 0;
for (String row : board) {
for (char c : row.toCharArray()) {
xCount = (c == 'X') ? xCount + 1 : xCount;
yCount = (c == 'O') ? yCount + 1 : yCount;
}
}
return !((yCount != xCount && yCount != xCount - 1) ||
(yCount != xCount - 1 && win(board, 'X')) ||
(yCount != xCount && win(board, 'O')));
}
public boolean win(String[] board, char p){
for (int i = 0; i < 3; i++){
if (((p == board[0].charAt(i)) && (p == board[1].charAt(i)) && (p == board[2].charAt(i))) ||
(p == board[i].charAt(0) && p == board[i].charAt(1) && p == board[i].charAt(2))){
return true;
}
}
return (p == board[0].charAt(0) && p == board[1].charAt(1) && p == board[2].charAt(2)) ||
(p == board[0].charAt(2) && p == board[1].charAt(1) && p == board[2].charAt(0));
}
}