AtCoderで遭遇したのでメモ。
pythonでべき乗やべき乗根を計算する場合は、演算子でやる方法とpow関数を使う方法がある。
# べき乗 >>> pow(2,5) 32 >>> 2**5 32 # べき乗根 >>> pow(100, .5) 10.0 >>> 100**.5 10.0
どちらも基本的には同じ結果になるが、演算子を使う時は-
の取扱に注意が必要とのこと。
ちなみに、同じ問題を初見で解いた時はループを回す実装で提出した。
これでも問題はなかったが、nの上限が与えられていないのと処理時間に制限があったので、通るかどうか半信半疑で提出した。
知っていれば演算子やpow関数で解いたのに、という悔しさもある。
def execute(x): for n in range(10**9): if n**4 == x: return n if __name__ == '__main__': print(execute(int(input())))