After Find(x) discovers the root, path compression rewrites the parent of every node it passed to be that root. The work is paid once and makes the next Finds on the same nodes one hop long.