Another approach is to replace n's with respective index.
s = Nest[1 + x^n (#) &, 1, 3] z = 1 + x^n (1 + x^n (1 + x^n)) Use ReplacePart with Map(/@)
ReplacePart[z, Position[z, n][[#]] -> Defer@# & /@ Range[3]] If you do not want x^1 drop Defer.

