省流:书接上回,还是 python
题目传送门
c++ 肯定是会挂掉了,写一个 python 的二分。
import sys
sys.set_int_max_str_digits(10086)
a = int(input())
b = int(input())
l = -1
r = 1
if a == 1:
print(b)
else:
while pow(r, a) <= b:
l, r = r, r * 2
while l < r:
mid = (l + r + 1) // 2
if pow(mid, a) > b:
r = mid - 1
else:
l = mid
print(l)