Skip to content

Instantly share code, notes, and snippets.

@sukhchander
Created December 31, 2015 17:22
Show Gist options
  • Save sukhchander/7a6f5544205bf6854133 to your computer and use it in GitHub Desktop.
Save sukhchander/7a6f5544205bf6854133 to your computer and use it in GitHub Desktop.
max sum path
#!/usr/bin/env ruby
def max_path_sum(file)
input = File.open(file).readlines
numbers = input.collect { |line| line.split(" ").map(&:to_i) }
# started from the bottom
triangle_size = numbers.size - 2
triangle_size.downto(0).each do |row|
(0 .. numbers[row].size - 1).each do |col|
if numbers[row + 1][col] > numbers[row + 1][col + 1]
max = numbers[row + 1][col]
else
max = numbers[row + 1][col + 1]
end
numbers[row][col] += max
puts row
puts numbers[row][col]
end
end
# now we here
numbers[0][0]
end
puts max_path_sum('triangle.txt')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment