数论之不用除法运算,如何实现A/3

来源:互联网 发布:武汉cnc编程培训 编辑:程序博客网 时间:2024/05/16 08:49

这是一道填空题

一 除法等于减法。

 

(1)一般的想法是:循环减去3

(2)我的想法是:从高位到低位,每一位减去3。
a  位置I上的字符是a[i],则   j=a[i]mod3得到j ,那么这表示有j*10^i个3。a[i]=a[i]-3*j.
     同理求的所有位置代表的数含有的3。
b   如某一位剩余1或者2则变成10或者20加到下一位去,进入步骤a


下面几种算法没时间看。

还有一种算法:http://blog.csdn.net/oyster2008/article/details/5978833 

http://goorockey.sourceforge.net/algorithm/28004

http://blog.sina.com.cn/s/blog_7f9dfc1f0100u319.html