public int GetPossibilitiesInBlock(int[,] sudokuBoard, int givenRow, int givenCol) { int[] possibilities = { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; var sudokuMap = _sudokuMapper.FindStart(givenRow, givenCol); for (int row = sudokuMap.StartRow; row < sudokuMap.StartRow + 2; row++) { for (int col = sudokuMap.StartCol; col < sudokuMap.StartCol + 2; col++) { if (IsValidSingle(sudokuBoard[row, col])) { possibilities[sudokuBoard[row, col] - 1] = 0; } } } return(Convert.ToInt32(String.Join(string.Empty, possibilities.Select(p => p).Where(p => p != 0)))); }