And*_*uss 2 c math gmp
我想用GMP找到一个非常大的平方根的上限.在C中ceil(sqrt(n)).
ceil(sqrt(n))
整数的GMP平方根截断结果,因此10的平方根将报告为3.浮点平方根按预期工作,但我需要采用下一个最大整数.mpf_get_d向零舍入,但否则做我想要的.如何获得大量平方根的上限?
mpf_get_d
Mys*_*ial 7
这是一个快速而肮脏的技巧:
ceil( sqrt(n) ) = trunc_sqrt(n - 1) + 1
trunc_sqrt(n)您当前使用的GMP的整数平方根函数在哪里.
trunc_sqrt(n)
这适用于所有整数n > 0.
n > 0
归档时间:
13 年,5 月 前
查看次数:
1003 次
最近记录: