由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 问个tictactoe的问题
相关主题
amazon居然有这么难得phone interview questionminimum path sum的滚动数组啥意思
发Amazon三次 Phone Interview 面经,赞RP求祝福大牛看过来~Word Search这题的优化解是?
这题咋做?G家面试题
LinkedIn家电面面经请教大家一个算法的面试题目
Leetcode online judge的word search是不是用dp?请教一个算法。
二维数组问题请教一下DP解法能用一维数组的面试的时候用二维数组会减分不?
这几个题目怎么做啊Smallest Rectangle Enclosing Black Pixels
讨论CAIWU那道矩阵DP题的思路?请教一道题
相关话题的讨论汇总
话题: dscore话题: int话题: vscore话题: hscore话题: tictactoe
进入JobHunting版参与讨论
1 (共1页)
d*****c
发帖数: 605
1
我记得以前在本版看到哪位大神说过tictactoe可以用-1 表示X, 1 表示 O,然后扫一
遍就能判断有没有获胜的。用一个一维的数组存得。
怎么都想不起来了,哪位大神能帮忙解答一下
j*x
发帖数: 425
2
public class TicTacToe {
int[][] board;
int[] hScore;//horizontal
int[] vScore;//vertical
int[] dScore;//diagnal

public TicTacToe(int n){
board=new int[n][n];
hScore=new int[n];
vScore=new int[n];
dScore=new int[2];
}

public void addMove(char c,int i,int j){
board[i][j]=c;
int n=board.length;
if(c=='X'){
hScore[i]-=1;
vScore[j]-=1;
if(i==j) dScore[0]-=1;
if(i+j==n) dScore[1]+=1;
if(hScore[i]==-n||vScore[j]==-n||dScore[0]==-n||dScore[1]==-n){
System.out.println("Player X is win!");
return;
}
}else{
hScore[i]+=1;
vScore[j]+=1;
if(i==j) dScore[0]+=1;
if(i+j==board.length) dScore[1]+=1;
if(hScore[i]==n||vScore[j]==n||dScore[0]==n||dScore[1]==n){
System.out.println("Player O is win!");
return;
}
}
}
}
写了一个不知道对不对,欢迎批评指正
1 (共1页)
进入JobHunting版参与讨论
相关主题
请教一道题Leetcode online judge的word search是不是用dp?
这题如何做,最近看面经碰到两次都不太会做二维数组问题
问个google面试题这几个题目怎么做啊
OOD设计题目一定要体现出来几个点么??讨论CAIWU那道矩阵DP题的思路?
amazon居然有这么难得phone interview questionminimum path sum的滚动数组啥意思
发Amazon三次 Phone Interview 面经,赞RP求祝福大牛看过来~Word Search这题的优化解是?
这题咋做?G家面试题
LinkedIn家电面面经请教大家一个算法的面试题目
相关话题的讨论汇总
话题: dscore话题: int话题: vscore话题: hscore话题: tictactoe