0080 平方根展开
* * * *
拉格朗日计划
* * * *
平方根展开

众所周知,若一个自然数的算术平方根不是整数,那么就一定是无理数,也即无限不循环小数。

$\sqrt2=1.41421356237309504880\ldots$,它的前一百个数字(包括小数点前的1)之和是475。

考虑前一百个自然数的算术平方根,求其中所有无理数的前一百个数字的总和。

本题难度:



解答

用标准库直接计算即得结果$40886$。

from decimal import *
print(sum(sum(int(s) for s in str(Decimal(n).sqrt(Context(102)))[:-2] if s!=".") for n in [i for i in range(2,100) if i not in [4,9,16,25,36,49,64,81]]))