Shifting nth-root algorithm