开方->次方后还比这个数小的数的个数
题目里是把所有1 的贡献默认成1,也就是要把根号后的数的个数-1
cnt[i] 是 [2,n]中所有i次数的个数,首先每个数都至少能开一次幂,还是它本身
所以我们已经提取了一次它的贡献了,最后算次幂的时候要将能开 i 次方的数的个数 再减去这个个数,体现在算法里就是 能开 i 次方的数的个数 * (i - 1)
(1只是一个特例,其它数都要减一次再加一次,1要减很多次)参考后面return res + x