in the nonrecursive version, a retrn value of 1 means this call has completed

towers(n-1,i,f,a);