So following your explanation,
return sum([1, 3], 1) + 3
So let us go:
return sum([1, 3], 1) + 3 / ///not +1 as in the explanation as this is arr[1]
sum([1, 3], 1) will be as follow:
As n (1 in this case) is greater than 0 else block will work.
sum ( [1, 3], 1-1) + arr[1 - 1]
means:
sum( [1, 3], 0) + arr[0]
sam as
sum( [1, 3], 0) + 1
again sum function will work; as the n is zero will return zero and exit. it will add 3 plus 1 ,
Hope this will be answer to @ [jay_archer] s question