Double nesting a function?

I need to write a function of 4 variables [p,x,n,H] that outputs a list of the following list elements:


As you can see, each output contains all previous outputs, but not in the traditional "NestList" way. I'm trying to write a function that describes the above. I've tried NestList, FoldList, and Module to no avail.

Perhaps something like

In[1]:= a[k_] := Floor[(p * x)/n^(H - k) - Sum[n^(k - j) a[j], {j, 0, k - 1}]]

In[2]:= a[0]

Out[2]= Floor[n^-H p x]

In[3]:= a[1]

Out[3]= Floor[n^(1 - H) p x - n Floor[n^-H p x]]

Thanks Ilian. Works well