class ILoveSudoku::Puzzle
Public Class Methods
new(matrix=nil)
click to toggle source
# File lib/puzzle.rb, line 4 def initialize(matrix=nil) @matrix = matrix ||= blank_matrix end
Public Instance Methods
edit_row(index, str)
click to toggle source
# File lib/puzzle.rb, line 24 def edit_row(index, str) arr = [] str.each_char do |char| arr << (char == "." ? nil : char.to_i) end @matrix[index] = arr end
solved_matrix()
click to toggle source
# File lib/puzzle.rb, line 12 def solved_matrix GraphSearcher.new(@matrix).result end
solved_string()
click to toggle source
# File lib/puzzle.rb, line 20 def solved_string PuzzleFormatter.new(solved_matrix).to_s end
unsolved_matrix()
click to toggle source
# File lib/puzzle.rb, line 8 def unsolved_matrix @matrix end
unsolved_string()
click to toggle source
# File lib/puzzle.rb, line 16 def unsolved_string PuzzleFormatter.new(@matrix).to_s end
Private Instance Methods
blank_matrix()
click to toggle source
# File lib/puzzle.rb, line 34 def blank_matrix arr = [] 9.times { arr << [nil] * 9 } arr end