public void NQueensTest() { var puzzle = new NQueens(); var solution = puzzle.Solve(); NQueens.PrintBoard(solution); }
public void TestNumberOfSolutions(int boardSize, int expectedSolutions, int expectedBacktracks) { var nQueens = new NQueens(boardSize); nQueens.Search(); Assert.Equal(expectedSolutions, nQueens.Solutions.Count); Assert.Equal(expectedBacktracks, nQueens.State.Backtracks); }
public void nQueensTest() { foreach (var testdata in TestDataList) { IList <IList <string> > queens = NQueens.SolveNQueens(testdata.Input); foreach (var output in queens) { foreach (var chessboard in output) { Console.WriteLine(chessboard); } Console.WriteLine("******************"); } } }
public void TestCorrectSolution() { var nQueens = new NQueens(8); nQueens.Search(); var solution = nQueens.Solutions.First(); Assert.Equal(0, solution["0"].InstantiatedValue); Assert.Equal(4, solution["1"].InstantiatedValue); Assert.Equal(7, solution["2"].InstantiatedValue); Assert.Equal(5, solution["3"].InstantiatedValue); Assert.Equal(2, solution["4"].InstantiatedValue); Assert.Equal(6, solution["5"].InstantiatedValue); Assert.Equal(1, solution["6"].InstantiatedValue); Assert.Equal(3, solution["7"].InstantiatedValue); }
public void Test1() { var sol = new NQueens(); var res = sol.SolveNQueens(4); var expected = new List <IList <string> >() { new List <string>() { ".Q..", "...Q", "Q...", "..Q." }, new List <string>() { "..Q.", "Q...", "...Q", ".Q.." }, }; Utlilitiy.AssertAreEqualIgnoreOrder(expected, res); }
public static void NQueensDemo() { NQueens.QueenCount = 8; NQueens.NumberOfRowsOnBoard = 8; NQueens.NumberOfColumnsOnBoard = 8; var QueenPositions = NQueens.GetQueensSafelyOnBoard(); int i = 1; if (QueenPositions.Count > 0) { foreach (var tuple in QueenPositions) { Console.WriteLine("Queen " + i + " is on Row " + (tuple.Item1 + 1).ToString() + " and Column " + (tuple.Item2 + 1).ToString()); i++; } } else { Console.WriteLine("Its an unwinnable situation"); } }
public void NQueenTest(int n, bool expected) { Assert.Equal(expected, NQueens.SolveNQueens(n)); }
static void testNQueen() { NQueens.solve(4); }