示例#1
0
    private XmlNode CreateEmptySolutionPuzzleNode()
    {
        inputPuzzle = new SudokuPuzzle(PUZZLE_SIZE);
        ISudokuPuzzleXmlExporter exporter = new SudokuPuzzleExporter();
        XmlNode puzzleNode = exporter.Export(inputPuzzle);
        XmlElement inputPuzzleNode = puzzleNode.OwnerDocument.CreateElement("SolutionPuzzle");
        inputPuzzleNode.AppendChild(puzzleNode);

        return inputPuzzleNode;
    }
示例#2
0
        public void TestMain()
        {
            int start = Environment.TickCount;
            Assert.IsTrue(puzzle.Solve(strategy), "Did not solve the puzzle.");
            int end = Environment.TickCount;

            Console.WriteLine(String.Format("Time elapsed: {0} milliseconds", end - start));
            ISudokuPuzzleStringExporter exporter = new SudokuPuzzleExporter();
            Console.WriteLine(exporter.Export(puzzle));
        }
示例#3
0
    private XmlNode CreateParsedInputPuzzleNode()
    {
        inputPuzzle = ParseInputPuzzleFromForm();

        ISudokuPuzzleXmlExporter exporter = new SudokuPuzzleExporter();
        XmlNode puzzleNode = exporter.Export(inputPuzzle);
        XmlElement inputPuzzleNode = puzzleNode.OwnerDocument.CreateElement("InputPuzzle");
        inputPuzzleNode.AppendChild(puzzleNode);

        return inputPuzzleNode;
    }
示例#4
0
    private XmlNode CreateInputPuzzleNode()
    {
        ISudokuPuzzleStringImporter si = new SudokuPuzzleImporter();
        inputPuzzle = si.Import("0,0,0,0,5,1,2,0,0\n2,0,1,0,9,0,0,8,5\n0,9,4,0,0,2,0,0,7\n6,0,0,0,2,0,7,3,0\n9,0,0,0,8,0,0,0,1\n0,3,8,0,7,0,0,0,6\n7,0,0,2,0,0,8,5,0\n3,8,0,0,4,0,1,0,9\n0,0,6,9,3,0,0,0,0");

        //ISudokuPuzzle inputPuzzle = new SudokuPuzzle(PUZZLE_SIZE);
        ISudokuPuzzleXmlExporter exporter = new SudokuPuzzleExporter();
        XmlNode puzzleNode = exporter.Export(inputPuzzle);
        XmlElement inputPuzzleNode = puzzleNode.OwnerDocument.CreateElement("InputPuzzle");
        inputPuzzleNode.AppendChild(puzzleNode);

        return inputPuzzleNode;
    }
示例#5
0
    private XmlNode CreateSolutionPuzzleNode()
    {
        inputPuzzle = ParseInputPuzzleFromForm();
        //ISudokuStrategy strat = new SimpleBruteForceSudokuStrategy();
        //ISudokuStrategy strat = new BruteForceSudokuStrategy();
        ISudokuStrategy strat = new CycleFirstBruteForceSudokuStrategy();
        int start = Environment.TickCount;
        bool solved = inputPuzzle.Solve(strat);
        int end = Environment.TickCount;
        int tts = end - start;

        ISudokuPuzzleXmlExporter exporter = new SudokuPuzzleExporter();
        XmlNode puzzleNode = exporter.Export(inputPuzzle);
        XmlElement inputPuzzleNode = puzzleNode.OwnerDocument.CreateElement("SolutionPuzzle");
        XmlAttribute attSolved = puzzleNode.OwnerDocument.CreateAttribute("IsSolved");
        XmlAttribute attTts = puzzleNode.OwnerDocument.CreateAttribute("TimeToSolve");

        attSolved.Value = solved.ToString();
        attTts.Value = tts.ToString();
        inputPuzzleNode.AppendChild(puzzleNode);
        inputPuzzleNode.Attributes.Append(attSolved);
        inputPuzzleNode.Attributes.Append(attTts);

        return inputPuzzleNode;
    }