我想找到小于或等于n的第k个根的最大整数.我试过了
int(n**(1/k))
Run Code Online (Sandbox Code Playgroud)
但是对于n = 125,k = 3,这给出了错误的答案!我碰巧知道5立方是125.
>>> int(125**(1/3))
4
Run Code Online (Sandbox Code Playgroud)
什么是更好的算法?
背景:2011年,这次失误让我击败Google Code Jam.https://code.google.com/codejam/contest/dashboard?c=1150486#s=p2