Sha256: 5f7938d1cd02eb08ffc9440072ba34498a1296122e5590293cd65b457b8d9160
Contents?: true
Size: 544 Bytes
Versions: 396
Compression:
Stored size: 544 Bytes
Contents
class Triangle attr_reader :depth def initialize(depth) @depth = depth end def rows triangle = [] 0.upto(depth - 1) do |row| values = [] if row == 0 values << 1 else length = (triangle[row - 1] || []).size 0.upto(length) do |position| left = position.zero? ? 0 : triangle[row - 1][position - 1] right = (triangle[row - 1] || [])[position] || 0 values << (left + right) end end triangle[row] = values end triangle end end
Version data entries
396 entries across 396 versions & 1 rubygems