Jack Kelly - 1 year ago 174
Ruby Question

# i need to understand a solution to a row sum odd numbers method in ruby

The question:

Calculate the row sums of this triangle from the row index.

``````row_sum_odd_numbers(1); # 1
row_sum_odd_numbers(2); # 3 + 5 = 8
row_sum_odd_numbers(3); # 7 + 9 + 11 = 27
``````

...

``````Test.assert_equals(row_sum_odd_numbers(1), 1)

Test.assert_equals(row_sum_odd_numbers(2), 8)

Test.assert_equals(row_sum_odd_numbers(13), 2197)

Test.assert_equals(row_sum_odd_numbers(19), 6859)

Test.assert_equals(row_sum_odd_numbers(41), 68921)
``````

The solution to the question is as follows:

``````def row_sum_odd_numbers(n)
return n**3
end
``````

I understand that this code returns the answer. I don't understand how it returns the answer. Why does the 3rd exponent of n return the row sum of odd numbers?

lets find out what is the first summand: before first summand we have `1 + 2 + 3 + ... + n-1` odd numbers, their amount is `((n-1)*n)/2`. So, first summand after them is
`((n-1)*n)/2 * 2 + 1 = (n-1)*n + 1`.
`row_sum_odd_numbers(n)= (n-1)*n + 1 + (n-1)*n + 3 + (n-1)*n + 5 +...+ (n-1)*n + 2*n - 1 =`
`(n-1)*n*n + 1 + 3 + 5 + ... + 2*n -1 = n^3 - n^2 + n^2 = n^3`