高精度除法

来源:互联网 发布:恋夜秀场手机端口下载 编辑:程序博客网 时间:2024/05/01 16:45

求  M/N 的商的整数部分。

 

M/N = A

M = N * A + res(余数)

A可以用二进制表示

M = N * ( 2^p1 + 2^ p2+ ... +2^pk ) + res

 

所以设 t[i] =  N * 2^i

从高到低   如果 M > t[i]

M -= t[i]

ans += 2^i

直到M < N*1 (此时M是余数)。因此只需要高精度加,减,比较大小