public static void Main(string [] args) { var numerBoardTokenizer = new NumberBoardTokenizer(); using (var streamReader = new StreamReader(new FileStream("./question.txt", FileMode.Open))) { using (var streamWriter = new StreamWriter(new FileStream("./answer.txt", FileMode.OpenOrCreate))) { var lines = streamReader.ReadToEnd().Split(new[] {Environment.NewLine}, StringSplitOptions.RemoveEmptyEntries); for (var index = 0; index < lines.Length; index += 10) { var header = lines[index]; Console.WriteLine(header); streamWriter.WriteLine(header); var generate = numerBoardTokenizer.Generate(string.Join("", lines, index + 1, 9)); var sudokuBoard = new SudokuBoard(); sudokuBoard.Make(generate); streamWriter.WriteLine(sudokuBoard.Answer); sudokuBoard.Solve(); streamWriter.WriteLine(sudokuBoard.Answer); } } } }
public void should_generate_data_list_(string input, int _0, int _1, int _2, int _18, int _80 ) { var dataList = new NumberBoardTokenizer().Generate(input); Assert.Equal(81, dataList.Count); Assert.Equal(_0, dataList[0]); Assert.Equal(_1, dataList[1]); Assert.Equal(_2, dataList[2]); Assert.Equal(_18, dataList[18]); Assert.Equal(_80, dataList[80]); }