public int playN(Player white, Player black, int n) { long startTime = System.nanoTime(); int scoreW = 0; int scoreB = 0; for (int i = 0; i < n; i++) { Othello o = new Othello(); white.init(1, 9000000000L, new Random()); black.init(0, 9000000000L, new Random()); boolean blackMove = true; Move prevMove = null; while (o.gameStatus() == 0) { Move move = blackMove ? black.nextMove(prevMove, 90000000L, 90000000L) : white.nextMove(prevMove, 90000000L, 90000000L); if (move != null) o.makeMove((blackMove ? 2 : 1), move); prevMove = move; blackMove = !blackMove; } if (o.gameStatus() == 1) scoreW++; else if (o.gameStatus() == 2) scoreB++; System.out.println(o); } long endTime = System.nanoTime(); System.out.println(((double) (endTime - startTime)) / (Math.pow(10.0, 9.0))); return scoreW - scoreB; }