Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Triangle
- def initialize(num_rows)
- @num_rows = num_rows
- end
- def rows
- @triangle = [[1]]
- (2..@num_rows).each { |n| @triangle << make_row(n) }
- @triangle
- end
- def make_row(n)
- previous_row = @triangle[n - 2]
- new_row = []
- n.times do |num|
- if num == 0 || num == n - 1
- new_row << 1
- else
- new_row << (previous_row[num - 1] + previous_row[num])
- end
- end
- new_row
- end
- def last
- @triangle[-1]
- end
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement